【问题标题】:Add Button on Each Row in DataGrid WPF in Code Behind在代码后面的 DataGrid WPF 中的每一行上添加按钮
【发布时间】:2015-06-29 07:02:03
【问题描述】:

我正在为数据网格动态添加列,

Dim oName_Binding As Binding = New Binding("Order_Name")
oName_Binding.Mode = BindingMode.TwoWay
oName_Binding.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged

Dim dgcombo As DataGridComboBoxColumn = New DataGridComboBoxColumn()
dgcombo.Header = "Order"
dgcombo.ItemsSource = lstOrder
dgcombo.TextBinding = oName_Binding
dgcombo.DisplayMemberPath = "Order_Name"
dgcombo.SelectedValuePath = "Order_ID"
dgv.Columns.Add(dgcombo)

我想在每一行添加按钮。请给我建议...

【问题讨论】:

    标签: wpf vb.net datagrid


    【解决方案1】:

    将单元格模板分配给 dgcombo 列。 在该模板中,您可以添加所需的任何控件。 您可以在您的 xaml 或代码中定义您的单元格模板。

    dgcombo.CellTemplate = getDataTemplate(); // template from code behind
    
    private static DataTemplate getDataTemplate()
    {
        DataTemplate template = new DataTemplate();
        FrameworkElementFactory factory = new FrameworkElementFactory(typeof(Button));
        factory.SetValue(Button.HorizontalAlignmentProperty, HorizontalAlignmentProperty.Right);
        template.VisualTree = factory;
    
        return template;
    }
    

    如果您已经在 xaml 中定义了模板,那么您可以简单地使用 FrameworkElement.FindResource 方法在代码中获取您的模板,然后您可以分配相同的模板。

    【讨论】:

    • DataGridComboBoxColumn 上没有这样的 dgcombo.CellTemplate 属性。请给我建议..
    • 只有在DataGridComboBoxColumn的帮助下,我们才能连续添加一个按钮?请回复我。谢谢..
    猜你喜欢
    • 1970-01-01
    • 2014-10-18
    • 1970-01-01
    • 2012-07-07
    • 2021-01-27
    • 2015-04-08
    • 1970-01-01
    • 2011-09-07
    • 2011-03-04
    相关资源
    最近更新 更多