DataGrid 用法示例

1.xaml

  <Border BorderBrush="#FF009DFF" BorderThickness="1" Margin="2" VerticalAlignment="Stretch" Grid.Row="1">
                <ScrollViewer VerticalScrollBarVisibility="Auto"  BorderThickness="0">
                    <sdk:DataGrid ItemsSource="{Binding TestList, Mode=TwoWay}" SelectedItem="{Binding SelectTest}" BorderThickness="0" 
                        FontSize="13" Name="dgrid" IsReadOnly="{Binding IsTestListRead}" AutoGenerateColumns="False" 
                                    cal:Message.Attach="[Event CellEditEnded]=[Action TestEnded($view,$eventArgs,dgrid.SelectedItem)];
                                   [Event MouseRightButtonDown]=[Action TestListMouseRightButtonDown($view,$eventArgs,dgrid.SelectedItem)];
                               [Event MouseRightButtonUp]=[Action TestListMouseRightButtonUp($view,$eventArgs,dgrid.SelectedItem)]">
                        <sdk:DataGrid.RowStyle>
                            <Style TargetType="sdk:DataGridRow">
                                <Setter Property="Foreground" Value="{Binding Pro_TestState, Mode=TwoWay, Converter={StaticResource dgcolor}}" />
                            </Style>
                        </sdk:DataGrid.RowStyle>
                        <sdk:DataGrid.Columns>
                            <sdk:DataGridTextColumn Header="测试版本" Binding="{Binding Pro_Vision}" Width="1*" IsReadOnly="True"/>
                            <sdk:DataGridTextColumn Header="测试内容" Binding="{Binding Pro_TestValue}"  Width="2.2*" IsReadOnly="True"/>
                            <sdk:DataGridTemplateColumn Header="当前状态" DisplayIndex="6"   CellTemplate="{StaticResource CellState}" IsReadOnly="False" Width="0.8*"
                                                    CellEditingTemplate="{StaticResource EditState}" />
                        </sdk:DataGrid.Columns>
                    </sdk:DataGrid>
                </ScrollViewer>
            </Border>
<UserControl.Resources>

        <DataTemplate x:Key="CellState">
            <TextBlock Text="{Binding Pro_TestState, Mode=TwoWay}"/>
        </DataTemplate>
        <DataTemplate x:Key="EditState" >
            <ComboBox SelectedIndex="{Binding Pro_TestState, Mode=TwoWay}">
                <ComboBoxItem Content="待测试" ></ComboBoxItem>
                <ComboBoxItem Content="已关闭"></ComboBoxItem>
            </ComboBox>
        </DataTemplate>

    </UserControl.Resources>

2.cs

 public void TestEnded(object sender, RoutedEventArgs e, object view)
        {

            DataGrid dg = (sender as DataGrid);
            Property vm = (ProjectTestProperty)view;

        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值