WPF后台為DataGrid第一列使用DataTemplate和CheckBox配合添加選擇功能


       //-------------添加選擇列
       //--dgrid為DataGrid實例對象,
Row_Checked是響應事件。
            DataGridTemplateColumn dgtc = new DataGridTemplateColumn();
            dgtc.Header = "選擇";
            DataTemplate dt = new DataTemplate();
            //定義子元素
            FrameworkElementFactory fef = new FrameworkElementFactory(typeof(CheckBox));
            binding = new Binding("Check");
            fef.SetValue(CheckBox.IsCheckedProperty,binding);
            fef.SetValue(CheckBox.ForegroundProperty, Brushes.Red);
       //關鍵部分,為每一項添加事件理解
AddHandler的用法
       fef.AddHandler(CheckBox.CheckedEvent,new RoutedEventHandler(Row_Checked));
       dt.VisualTree
= fef;//添加子元素
       dgtc.CellTemplate = dt;
       dgrid.Columns.Add(dgtc);
//將第一列添加到數據表

上面一段代碼我琢磨了一天,我相信前台XAML能實現的東西,在后台一定可用生成,關鍵是理解內部結構。前台的一個屬性可能是直接寫在標簽里面就那么簡單,

后台可能就要實例對象,配置屬性,一層層添加對象,最后添加到主對象完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM