zoukankan      html  css  js  c++  java
  • WPF Devexpress GridControl Value与Display转换

    直入主题吧!开发中往往需要将代码转换成中文显示在表格中。

    如下图

    下面就直接贴代码了.

    C#代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Shapes;
    using System.Data;
    
    namespace WpfApplication1
    {
        /// <summary>
        /// Window4.xaml 的交互逻辑
        /// </summary>
        public partial class Window4 : Window
        {
    
            public static List<Areas> Data
            {
                get { return Areas.getgg(); }
            }
    
    
            public Window4()
            {
                InitializeComponent();
                gridcontrol.ItemsSource = NwindData.DataPerson;
            }
    
        }
    
    
        public class NwindData
        {
    
            public static DataTable DataPerson
            {
                get { return setPerson(); }
            }
    
            private static DataTable setPerson()
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("id",Type.GetType("System.Int32"));
                dt.Columns.Add("username", Type.GetType("System.String"));
                dt.Columns.Add("areaid", Type.GetType("System.Int32"));  //这里的类型一定要和Area中的Areaid类型一致不然就显示不中文
                DataRow row = dt.Rows.Add();
                
                row[0] = "1";
                row[1] = "张三";
                row[2] = "20";
    
                row = dt.Rows.Add();
                row[0] = "2";
                row[1] = "李四";
                row[2] = "10";return dt;
            }
    
        }
    
        public class Areas
        {
            int areaid;
    
            public int Areaid
            {
                get { return areaid; }
                set { areaid = value; }
            }
            string areaName;
    
            public string AreaName
            {
                get { return areaName; }
                set { areaName = value; }
            }
            public Areas(int areaid, string areaname)
            {
                this.areaid = areaid;
                this.areaName = areaname;
            }
    
            public static List<Areas> getgg()
            {
                List<Areas> list = new List<Areas>();
                list.Add(new Areas(10,"中国"));
                list.Add(new Areas(20,"美国"));
                return list;
    
            }
        }
    }

    XAML代码

    <Window xmlns:my="clr-namespace:WpfApplication1"  x:Class="WpfApplication1.Window4"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
            xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
            xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
            xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts"
            xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
            xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars"
            xmlns:dxdo="http://schemas.devexpress.com/winfx/2008/xaml/docking">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="*"></RowDefinition>
                <RowDefinition Height="40"></RowDefinition>
            </Grid.RowDefinitions>
            <Grid Grid.Row="0">
                <dxg:GridControl Name="gridcontrol" >
                    <dxg:GridControl.Columns>
                        <dxg:GridColumn FieldName="id"  MinWidth="100" Header="ID"/>
                        <dxg:GridColumn FieldName="username"  MinWidth="100" Header="姓名"/>
                        <dxg:GridColumn FieldName="areaid"  MinWidth="100" Header="地区ID"/>
                        <dxg:GridColumn FieldName="areaid" 
                                    EditSettings="{dxe:ComboBoxSettings DisplayMember=AreaName, ValueMember=Areaid, ItemsSource={x:Static my:Window4.Data}}" />
                    </dxg:GridControl.Columns>
                    <dxg:GridControl.View>
                        <dxg:TableView ShowGroupPanel="False" Name="ds" />
                    </dxg:GridControl.View>
                </dxg:GridControl>
            </Grid>        
        </Grid>
    </Window>

    到这里就ok了!

  • 相关阅读:
    echars柱状图修改每条柱的颜色
    vue打开到新页面,并传递参数
    彻底了解websocket原理
    bind和on的区别
    Vue如何更新子组件
    Vue父子组件生命过程
    使用css3实现动画来开启GPU加速
    前端技术体系
    Vue中的~(静态资源处理)
    垂直居中的办法小结
  • 原文地址:https://www.cnblogs.com/bpdwn/p/3645614.html
Copyright © 2011-2022 走看看