分享

WPF的DataGrid中如何通过上下文菜单(右键菜单)实现删除行的操作

 牛人的尾巴 2017-12-24
//前台
Plain Text code?
1
2
3
4
5
6
7
8
9
10
    <Grid>
        <DataGrid Name="datagrid" Margin="67,42,468,222"  SelectionMode="Extended" >
            <DataGrid.ContextMenu>
                <ContextMenu Name="dgmenu1" StaysOpen="true" >
                    <MenuItem Header="删行" Click="menuitem_click" >
                    </MenuItem>
                </ContextMenu>                
            </DataGrid.ContextMenu>
        </DataGrid>
    </Grid>

//后台
C# code?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
        DataTable dt = new DataTable();
        private void menuitem_click(object sender, RoutedEventArgs e) {
            this.dt.Rows.Remove(((DataRowView)this.datagrid.SelectedItems[this.datagrid.SelectedItems.Count - 1]).Row);
        }
        /// <summary>
        /// 窗体首次加载
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void mainwindow_loaded(object sender, RoutedEventArgs e) {
            dt.Columns.Add("a", System.Type.GetType("System.Boolean"));// System.Type.GetType("System.String")//System.Boolean
            dt.Columns.Add("b", System.Type.GetType("System.String"));
            for (int i = 0; i < 7; i++) {
                DataRow dr = dt.NewRow();
                dr["a"] = DBNull.Value;
                dr["b"] = "你好" + i;
                dt.Rows.Add(dr);
            }
            this.datagrid.ItemsSource = dt.DefaultView;
        }

 


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多