亲宝软件园·资讯

展开

C# datagridview、datagrid、GridControl增加行号

zls366 人气:0

1、WinForm中datagridview增加行号

在界面上拖一个控件dataGridView1,在datagridview添加行事件中添加如下代码:

private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
        {
            try
            {
                for (int i = 0; i < dataGridView1.Rows.Count; i++)
                    this.dataGridView1.Rows[i].HeaderCell.Value = (i + 1).ToString();
            }
            catch
            {
                MessageBox.Show("处理异常:表格行标题添加异常");
            }
        }
  

这样表格中每次有新行增添就会被自动打标行号.

2、WPF中datagrid增加行号

WPF类似WinFormdatagridview的表格控件是datagrid,我们可以将行标题添加代码写在LoadingRow事件中:

①附件事件:

一般是在xmal窗体的cs初始化类中:

DG.LoadingRow += new EventHandler<DataGridRowEventArgs>(DG_LoadingRow);


CM框架mvvm模式下:

[Event LoadingRow]=[DG_LoadingRow($source,$eventArgs)]"


DG_LoadingRow事件如下:

private void DG_LoadingRow(object sender, DataGridRowEventArgs e)
        {
            e.Row.Header = e.Row.GetIndex() + 1;
        }  

3、WPF dev控件GridControl增加行号

dev控件GridControl没有行增添增添事件,我们可以用下面的方法去做:

 增加控件引用空间:

xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid" 

<dxg:GridControl Name="grid" AutoGenerateColumns="AddNew">
   <dxg:GridControl.View>
        <dxg:TableView RowIndicatorContentTemplate="{StaticResource rowIndicatorContentTemplate}"/>
   </dxg:GridControl.View>
</dxg:GridControl

定义模板资源:

<UserControl.Resources>
        <DataTemplate x:Key="rowIndicatorContentTemplate">
            <StackPanel VerticalAlignment="Stretch"
                        HorizontalAlignment="Stretch">
                <TextBlock Text="{Binding Path=RowHandle.Value}"
                           TextAlignment="Center"
                           Foreground="Gray"/>
            </StackPanel>
        </DataTemplate>
    </UserControl.Resources>
  

----------------------------------------------------

加载全部内容

相关教程
猜你喜欢
用户评论