gpt4 book ai didi

c# - 动态数据网格,可选列

转载 作者:行者123 更新时间:2023-12-03 10:49:05 25 4
gpt4 key购买 nike

我知道这个问题之前已经回答过,但是看看他们中的大多数,他们使用后面的代码,我理解在 MVVM 中永远不行,其他人也使用 MVVM 模式。我拒绝使用模式,因为我想从头开始学习。我能够正确绑定(bind) ItemsSource 但如何绑定(bind)到数据网格标题等。

我认为这很常见,但我想要的是能够拥有一个带有标题的数据“表”。我希望用户能够右键单击标题行并关闭和打开列。那部分我并不担心弄清楚该怎么做。

我在问如何在没有代码隐藏或框架的情况下拥有一个具有动态列/标题的数据网格。我不确定如何从 View 模型绑定(bind)到数据网格。

最佳答案

 <DataGrid AutoGenerateColumns="False" Height="256" HorizontalAlignment="Left" Name="dgEmp" VerticalAlignment="Top" Width="490"  ItemsSource="{Binding DeleteData,Mode=TwoWay}" Margin="6,7,0,0" Grid.RowSpan="3">
<DataGrid.Columns>
<DataGridTextColumn Header="ID" Binding="{Binding ID,Mode=TwoWay}" IsReadOnly="True" Visibility="Hidden"/>
<DataGridTextColumn Header="Description" Binding="{Binding Description,Mode=TwoWay}" IsReadOnly="True"/>
<DataGridTextColumn Header="Amount" Binding="{Binding Amount,Mode=TwoWay}" IsReadOnly="True"/>
<DataGridTextColumn Header="Date" Binding="{Binding Date,Mode=TwoWay}" IsReadOnly="True"/>
<DataGridTextColumn Header="Remark" Binding="{Binding Remark,Mode=TwoWay}" IsReadOnly="True"/>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Update" x:Name="btnUpdate"
Click="btnUpdate_Click"></Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>

在此示例中,DataGrid 的 ItemSource 是 DeleteData,它是一个 ObservableCollection<Expense_Submit>
Expense_Submit 是我定义了所有属性的一类。它看起来像
public class Expense_Submit
{


private int _ID;

private string _UserID;

private string _Description;

private string _Amount;

private DateTime _Date;

private string _Remark;


}

关于c# - 动态数据网格,可选列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12606820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com