WPF DataGrid自動生成序號


需求和效果

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

 

設計思想和代碼

這里在DataGrid行級應用單值轉換器,獲取DataGrid的行號 , 轉換為對應的序號,思路和實現非常簡單,核心代碼就幾行

Binding:

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

Converter:

        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數據源,還是很方便的, 感興趣的小伙伴可以一試 :)

                <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

        密碼: wa1v

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM