如何使用wpf在datagrid中检索选定的行信息? [英] how to retrive the selected row information in datagrid using wpf?

查看:78
本文介绍了如何使用wpf在datagrid中检索选定的行信息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

hai朋友,





这里我将值重新绑定并绑定到datagrid,我希望从数据库中获取信息按钮单击datagrid中的选定行以显示标签/文本框的完整用户信息。





这里我的xaml代码:



< DataGrid RowHeight =50CanUserResizeRows =FalseHorizo​​ntalScrollBarVisibility =DisabledVerticalScrollBarVisibility =Visible
BorderBrush =# FF274196ColumnWidth =100BorderThickness =6Height =261
Name =dataGrid1VerticalAlignment =CenterHorizo​​ntalAlignment =CenterWidth =438ItemsSource ={Binding Path = LoadDataBinding} AutoGenerateColumns =FalseFontSize =16Opacity =1Visibility =VisibleFontStyle =ItalicFontWeight =NormalFontStretch =Normalremoved =WhiteMargin =242,136,192,208>
< DataGrid.RowHeaderTemplate>
< DataTemplate>
< ToggleButton x:Name =RowHeaderToggleButton

Cursor =Hand/>
< / DataTemplate>
< /DataGrid.RowHeaderTemplate>
< DataGrid.Columns>
< DataGridTemplateColumn Header =Photo>
< DataGridTemplateColumn.CellTemplate>
< DataTemplate>
< Image Horizo​​ntalAlignment =CenterVerticalAlignment =CenterHeight =50Width =50Source ={Binding Path = addimage}/>
< / DataTemplate>
< /DataGridTemplateColumn.CellTemplate>
< / DataGridTemplateColumn>
< DataGridTextColumn Binding ={Binding Path = addname}Header =NameIsReadOnly =True>
< DataGridTextColumn.ElementStyle>
< Style TargetType =TextBlock>
< Setter Property =Horizo​​ntalAlignmentValue =Center/>
< Setter Property =VerticalAlignmentValue =Center/>
< / Style>
< /DataGridTextColumn.ElementStyle>
< / DataGridTextColumn>
< DataGridTextColumn Binding ={Binding Path = addnumber1}Header =ContactnoIsReadOnly =True>
< DataGridTextColumn.ElementStyle>
< Style TargetType =TextBlock>
< Setter Property =Horizo​​ntalAlignmentValue =Center/>
< Setter Property =VerticalAlignmentValue =Center/>
< / Style>
< /DataGridTextColumn.ElementStyle>
< / DataGridTextColumn>
< DataGridTemplateColumn Header =查看详细信息>
< DataGridTemplateColumn.CellTemplate>
< DataTemplate>
< Button Click =Button_ClickHeight =25Width =50Background =#FF274196Foreground =WhiteFontSize =14ToolTip =查看完整详情>查看< /按钮>
< / DataTemplate>
< /DataGridTemplateColumn.CellTemplate>
< / DataGridTemplateColumn>
< /DataGrid.Columns>
< DataGrid.ColumnHeaderStyle>
< Style TargetType ={x:Type DataGridColumnHeader}>
< Setter Property =Horizo​​ntalContentAlignmentValue =Center/>
< Setter Property =VerticalContentAlignmentValue =Center/>
< Setter Property =HeightValue =35/>
< Setter Property =SeparatorBrushValue =DarkRed/>
< Setter Property =FontWeightValue =Black/>
< Setter Property =ForegroundValue =White/>
< Setter Property =Template>
< Setter.Value>
< ControlTemplate TargetType ={x:Type DataGridColumnHeader}>
< Grid>
< Border x:Name =columnHeaderBorder
BorderThickness =1
Padding =3,0,3,0>
< Border.BorderBrush>
< LinearGradientBrush StartPoint =0.5,0EndPoint =0.5,1>
< GradientStop Offset =0Color =#A5A5A5/>
< GradientStop Offset =1Color =#4B4B4B/>
< / LinearGradientBrush>
< /Border.BorderBrush>
< Border.Background>
< LinearGradientBrush StartPoint =0.5,0EndPoint =0.5,1>
< GradientStop Offset =0Color =#FF274196/>
< GradientStop Offset =1Color =#FF274196/>
< / LinearGradientBrush>
< /Border.Background>
< ContentPresenter Horizo​​ntalAlignment ={TemplateBinding Horizo​​ntalContentAlignment}
VerticalAlignment ={TemplateBinding VerticalContentAlignment}
SnapsToDevicePixels ={TemplateBinding SnapsToDevicePixels}/>
< / Border>

< / Grid>

< / ControlTemplate>
< /Setter.Value>

< / Setter>
< / Style>
< /DataGrid.ColumnHeaderStyle>
< / DataGrid>









请建议我。

解决方案

嗨...

你能看到这个链接!

获取WPF数据网格中的选定项目 [ ^ ]

谢谢你。

hai friends,


here i retrived and binded the values to datagrid, and i want to get information from the database by button clicking the selected row in datagrid to display the full user information to label/textbox.


here my xaml code :

             <DataGrid RowHeight="50"  CanUserResizeRows="False" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Visible"
                BorderBrush="#FF274196" ColumnWidth="100" BorderThickness="6"  Height="261"
                         Name="dataGrid1" VerticalAlignment="Center" HorizontalAlignment="Center" Width="438"  ItemsSource="{Binding Path=LoadDataBinding}" AutoGenerateColumns="False" FontSize="16" Opacity="1" Visibility="Visible" FontStyle="Italic" FontWeight="Normal" FontStretch="Normal" removed="White" Margin="242,136,192,208">
                 <DataGrid.RowHeaderTemplate>
                     <DataTemplate>
                         <ToggleButton x:Name="RowHeaderToggleButton"

                               Cursor="Hand" />
                     </DataTemplate>
                 </DataGrid.RowHeaderTemplate>
                 <DataGrid.Columns>
                     <DataGridTemplateColumn Header="Photo">
                         <DataGridTemplateColumn.CellTemplate>
                             <DataTemplate>
                                 <Image HorizontalAlignment="Center" VerticalAlignment="Center" Height="50" Width="50" Source="{Binding Path=addimage}"/>
                             </DataTemplate>
                         </DataGridTemplateColumn.CellTemplate>
                     </DataGridTemplateColumn>
                     <DataGridTextColumn  Binding="{Binding Path=addname}" Header="Name"  IsReadOnly="True">
                         <DataGridTextColumn.ElementStyle>
                             <Style TargetType="TextBlock">
                                 <Setter Property="HorizontalAlignment" Value="Center" />
                                 <Setter Property="VerticalAlignment" Value="Center" />
                             </Style>
                         </DataGridTextColumn.ElementStyle>
                     </DataGridTextColumn>
                     <DataGridTextColumn Binding="{Binding Path=addnumber1}" Header="Contactno" IsReadOnly="True">
                         <DataGridTextColumn.ElementStyle>
                             <Style TargetType="TextBlock">
                                 <Setter Property="HorizontalAlignment" Value="Center" />
                                 <Setter Property="VerticalAlignment" Value="Center" />
                             </Style>
                         </DataGridTextColumn.ElementStyle>
                     </DataGridTextColumn>
                     <DataGridTemplateColumn Header="View details">
                         <DataGridTemplateColumn.CellTemplate>
                             <DataTemplate>
                                 <Button Click="Button_Click" Height="25" Width="50" Background="#FF274196" Foreground="White" FontSize="14" ToolTip="view full details" >view</Button>
                             </DataTemplate>
                         </DataGridTemplateColumn.CellTemplate>
                     </DataGridTemplateColumn>
                 </DataGrid.Columns>
                 <DataGrid.ColumnHeaderStyle>
                     <Style TargetType="{x:Type DataGridColumnHeader}">
                         <Setter Property="HorizontalContentAlignment" Value="Center" />
                         <Setter Property="VerticalContentAlignment" Value="Center" />
                         <Setter Property="Height" Value="35" />
                         <Setter Property="SeparatorBrush" Value="DarkRed" />
                         <Setter Property="FontWeight" Value="Black" />
                         <Setter Property="Foreground" Value="White" />
                         <Setter Property="Template">
                             <Setter.Value>
                                 <ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
                                     <Grid>
 <Border x:Name="columnHeaderBorder"
     BorderThickness="1"
     Padding="3,0,3,0">
     <Border.BorderBrush>
         <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
             <GradientStop Offset="0" Color="#A5A5A5" />
             <GradientStop Offset="1" Color="#4B4B4B" />
         </LinearGradientBrush>
     </Border.BorderBrush>
     <Border.Background>
         <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
                                                     <GradientStop Offset="0" Color="#FF274196" />
                                                     <GradientStop Offset="1" Color="#FF274196" />
         </LinearGradientBrush>
     </Border.Background>
    <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
              VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
             SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
 </Border>

</Grid>

                                 </ControlTemplate>
                             </Setter.Value>

                         </Setter>
                     </Style>
                 </DataGrid.ColumnHeaderStyle>
             </DataGrid>





Please suggest me .

解决方案

Hi...
Can u see this link!.
Get Selected items in a WPF datagrid[^]
Thank u.


这篇关于如何使用wpf在datagrid中检索选定的行信息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆