• WPF DataGrid 操作列 类似 LinkButton


    WPF中没有类似LinkButton,所以只有运用Button及样式来实现LinkButton。

    DataGrid 操作列 实现 多个类似LinkButton按钮:

     

    具体实现代码如下:

    <DataGrid Name="dgData" IsReadOnly="true" AutoGenerateColumns="False">
        <DataGrid.Columns>
            <DataGridTemplateColumn Header="操作">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Button Name="btnInput" Content="填单" Cursor="Hand" Click="btnInput_Click" Margin="5,0,5,0">
                                <Button.Template>
                                    <ControlTemplate TargetType="Button">
                                        <TextBlock TextDecorations="Underline" Name="btnInput" >  
                                                <ContentPresenter />
                                        </TextBlock>
                                    </ControlTemplate>
                                </Button.Template>
                                <Button.Style>
                                    <Style TargetType="Button">
                                        <Setter Property="Foreground" Value="Blue" />
                                        <Style.Triggers>
                                            <Trigger Property="IsMouseOver" Value="true">
                                                <Setter Property="Foreground" Value="Red" />
                                            </Trigger>
                                        </Style.Triggers>
                                    </Style>
                                </Button.Style>
                            </Button>
                            <Button  Name="btnCancel" Content="取消" Cursor="Hand" Click="btnCancel_Click" Margin="5,0,5,0">
                                <Button.Template>
                                    <ControlTemplate TargetType="Button">
                                        <TextBlock TextDecorations="Underline" Name="btnCancel" >  
                                        <ContentPresenter />
                                        </TextBlock>
                                    </ControlTemplate>
                                </Button.Template>
                                <Button.Style>
                                    <Style TargetType="Button">
                                        <Setter Property="Foreground" Value="Blue" />
                                        <Style.Triggers>
                                            <Trigger Property="IsMouseOver" Value="true">
                                                <Setter Property="Foreground" Value="Red" />
                                            </Trigger>
                                        </Style.Triggers>
                                    </Style>
                                </Button.Style>
                            </Button>
                        </StackPanel>
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>
        </DataGrid.Columns>
    </DataGrid>
    前台代码
    private void btnInput_Click(object sender, RoutedEventArgs e)
    {
        DataRowView drv = this.dgData.CurrentItem as DataRowView;
        if (drv != null)
        {
            string ID = drv.Row["ID"].ToString();
        }
    }
    
    private void btnCancel_Click(object sender, RoutedEventArgs e)
    {
        DataRowView drv = this.dgData.CurrentItem as DataRowView;
        if (drv != null)
        {
            string ID = drv.Row["ID"].ToString();
        }
    }
    后台代码

    刚开始接触WPF,如有不妥之处望指正。

  • 相关阅读:
    php小结
    HTML-WEB前端-photoshop切图抠图详解
    JS面向对象的程序设计
    AJAX同步与异步的区别
    数据库的优化
    phpcms网站搬家 至 服务器 完整并且详细过程
    phpcms网页替换验证码功能 及 搜索功能
    用phpcms切换中英文网页的方法(不用解析二级域名)、phpcms完成pc和手机端切换(同一域名)
    JS常用屏蔽代码
    信息安全政策(隔离与监控)
  • 原文地址:https://www.cnblogs.com/wsk198726/p/5667608.html
Copyright © 2020-2023  润新知