如何在C#/ WPF中启用DataGrid列文本

时间:2019-01-23 18:16:32

标签: c# wpf xaml

我有一个应用程序,在其中单击“插入”后,我希望程序启用数据网格中的文本,并且用户可以输入产品信息。有人可以帮助我吗?

在应用代码和图片下方

enter image description here

comboBox1.Items.Add((string)d.Text);

2 个答案:

答案 0 :(得分:0)

UpdateSourceTrigger=PropertyChanged放入DataGrid绑定而不是DataGridTextColumn

答案 1 :(得分:0)

我找到了一个满足要求的解决方案,但是它需要绑定到Datagrid的对象具有布尔属性。这是xaml:

<DataGridTemplateColumn Width="120">
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBox
                                Name="innerTextBox"
                                BorderThickness="0"
                                IsReadOnly="{Binding DisableEdit, UpdateSourceTrigger=PropertyChanged}"
                                Text="{Binding Name}" />
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>

,这里是对象:  公共类Person:BindableBase     {         私人字符串名称;

    public string Name
    {
        get { return name; }
        set { name = value; }
    }

    private bool disableEdit;

    public bool DisableEdit
    {
        get { return disableEdit; }
        set { SetProperty(ref disableEdit, value); }
    }

}

这是button_click事件:

        var person = datagrid.SelectedCells[0].Item as Person;

        person.DisableEdit = false;