【问题标题】:Get datagrid column value - WPF C#获取数据网格列值 - WPF C#
【发布时间】:2017-11-16 21:26:53
【问题描述】:

我有一个包含两列的数据网格;好和修井。 WPF:

<DataGrid  x:Name="PrintReport1" ItemsSource="{Binding TableResults}" AutoGenerateColumns="False" FontFamily="Tahoma" FontSize="14" 
IsReadOnly="True" CanUserSortColumns="True" HorizontalContentAlignment="Stretch"  VerticalContentAlignment="Stretch"  SelectionMode="Extended" SelectionUnit="Cell">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Well" Binding="{Binding WellName, UpdateSourceTrigger=PropertyChanged}" IsReadOnly="True"  >

            <DataGridTextColumn.CellStyle>
                <Style TargetType="DataGridCell">
                    <EventSetter Event="PreviewMouseLeftButtonDown" Handler="dg_MouseLeftButtonDown_Injector" />
                </Style>
            </DataGridTextColumn.CellStyle>
        </DataGridTextColumn>
        <DataGridTextColumn Header="Recommendated Workover Type" Binding="{Binding WorkoverRecommendation, UpdateSourceTrigger=PropertyChanged}" IsReadOnly="True"  >                                                               </DataGridTextColumn>
   </DataGrid.Columns>

</DataGrid> 

第一列有一个eventsetter 事件,当用户单击特定单元格时,我可以通过该事件获取列值:

private void dg_MouseLeftButtonDown_Injector(object sender, MouseButtonEventArgs e)
{
    DataGridCell cell = sender as DataGridCell;
    dynamic dataObject = cell.DataContext;
    string InjectorName = dataObject.WellName;
    //do something...
}

我的问题是如何获得对应的第二列值? 例如,如果datagrid 看起来像这样:

Well  Workover

Well1     ABC

Well2     DEF

如果用户点击“Well2”单元格,我如何获得相应的修井值; “防御”?

【问题讨论】:

  • dataObject.WorkoverRecommendation
  • @ASh thnx。这很容易!

标签: c# wpf datagrid


【解决方案1】:
dataObject.WorkoverRecommendation

【讨论】:

    猜你喜欢
    • 2019-08-16
    • 2017-03-10
    • 1970-01-01
    • 1970-01-01
    • 2013-09-28
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 2020-01-14
    相关资源
    最近更新 更多