繁体   English   中英

Datagrid中不同组合框的不同值

[英]Different values for different comboboxes in Datagrid

耐心等待,因为我是WPF的新手。我有一个包含组合框的数据网格。

<DataGrid x:Name="dgData" AutoGenerateColumns="False" Margin="131,93,13,101" Grid.Column="1" SelectionChanged="dgData_SelectionChanged">
        <DataGrid.Columns>

            <DataGridTextColumn Binding="{Binding Subject}" Header="Subject" Width="100"/>

            <DataGridComboBoxColumn Header="Subject" x:Name="comboboxColumn1"/>

        </DataGrid.Columns>
 </DataGrid>

而且我使用以下代码来加载不同的itemsources,具体取决于用户单击的组合框:

   private void dgData_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {


        if (dgData.SelectedIndex == 0)
        {
            comboboxColumn1.ItemsSource = resolution;
        } else if (dgData.SelectedIndex == 1)
        {
            comboboxColumn1.ItemsSource = codec;    
        }
    }

我如何绑定dgData:

  List<TicketInfo> ticketsList = new List<TicketInfo> 
        {
            new TicketInfo{ Subject="File", Status="Open"},
            new TicketInfo{ Subject="Resolution", Status="Assigned"},

        };
        dgData.ItemsSource = ticketsList;

  public class TicketInfo
         {
            public string Subject { get; set; }
            public string Status { get; set; }
         }

现在,一旦用户选择了值,我还需要检索组合框的值。 有没有更优雅的方法可以将不同的项目加载到不同的组合框中并检索值?

谢谢!

您没有显示如何绑定dgData。

public class TicketInfo
{
   public string Subject { get; set; }
   public string Status { get; set; }
   public List<string> SubjectSubList { get; set; }
}    

将第二列绑定到SubjectSubList

当您构建List ticketsList时,只需将分辨率放在第一个SubjectSubList中,然后将编解码器放在第二个中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM