WPF DataGrid自動生成序號

需求和效果

應用WPF技術進行開發的時候,大多都會遇到給DataGrid添加序號的問題,今天分享一下查閱了不少stackoverflow的文章後,總結和改進過來的方法,先看一下效果圖,文末附Demo下載連接spa

 

設計思想和代碼

這裏在DataGrid行級應用單值轉換器,獲取DataGrid的行號 , 轉換爲對應的序號,思路和實現很是簡單,核心代碼就幾行設計

Binding:3d

                <DataGridTextColumn
                                    Binding="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Converter={StaticResource rowToIndexConverter}}" />

Converter:code

        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            DataGridRow row = value as DataGridRow;
            if (row != null)
                return row.GetIndex() + 1;
            else
                return -1;
        }

 

順便一提,應用字典類型綁定DataGrid數據源,仍是很方便的, 感興趣的小夥伴能夠一試 :)blog

                <DataGridTextColumn Header="姓名" 
                                    Binding="{Binding [Name]}" Width="60" />
                <DataGridTextColumn Header="年齡" 
                                    Binding="{Binding [Age]}" Width="60" />
                <DataGridTextColumn Header="時間"
                                    Binding="{Binding [Time]}" Width="60" />

 

下載

        連接: https://pan.baidu.com/s/1dE1dZPn 開發

        密碼: wa1vget

相關文章
相關標籤/搜索