WPF在datagrid中checkbox怎么遍历checkbox获取多选的项的ID?

CheckBoxvarmapSelect=(CheckBox)this.dgrid.Template.FindName("ckbSelectedAll",dgrid);多... CheckBox varmapSelect = (CheckBox)this.dgrid.Template.FindName("ckbSelectedAll", dgrid);
多选,全选已经实现,可是我不知道在选好了之后怎么获取多选项的ID,varmapSelect.checked只能获取全选那个键的check值啊
展开
 我来答
Mickal小米
2013-10-22 · TA获得超过3666个赞
知道大有可为答主
回答量:1542
采纳率:100%
帮助的人:1779万
展开全部
datagrid一旦与数据集合绑定之后,它的每个Row其实就跟每个数据实体绑定了。也就是说datagridrow.dataContext就是一个数据实体。而且wpf的逻辑树机制,使得datagridcell.dataContext及这些个datagridcell里的控件的dataContext也是所在行所绑定的数据实体。
你获取到check过的checkbox,你可以通过(checkbox.dataContext as 数据实体类).ID 获取ID值
更多追问追答
追问

数据绑定代码如上,求详解= =
追答
我还是给你个例子吧 = =
比如你在前台有两列是酱紫的,

后台遍历IsSelected = true的ID值:
public MainWindow()
{
this.InitializeComponent();
selectedItemId = new List();
}

List selectedItemId;

private void DataGrid_LoadingRow(object sender, DataGridRowEventArgs e)
{
DataGridRow dr = e.Row as DataGridRow;
if (dr != null)
{
var rowDataContext = dr.DataContext as 数据实体类
if (rowDataContext.IsSelected == true)
{
selectedItemId.Add(rowDataContext.ID);
}
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式