您的位置:首页 > 编程语言 > C#

C# Dev控件中的 PropertyGridControl 属性控件的基本用法以及排序

2015-08-27 10:23 561 查看
在这个例子中将实现让该属性控件实现排序按钮。

效果如图:



首先2个按钮是 CheckButton 控件。

然后是一个:PropertyGridControl 控件

为了美观一点,将2个CheckButton控件的AllowFocus属性设置为 False

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

代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Repository;
using DevExpress.XtraVerticalGrid;
using DevExpress.Utils;
using DevExpress.XtraBars;
using System.Reflection;

namespace WindowsFormsApplication1
{
/// <summary>
/// <para>Demo By Andrew.</para>
/// <para>Date:2012-8-8 14:23:27</para>
/// Andrew's Blog : http://www.cnblogs.com/andrew-blog /// </summary>
public partial class XtraForm1 : DevExpress.XtraEditors.XtraForm
{
/// <summary>
/// 设定2个CheckButton按钮的事件、属性初始化
/// 将PropertyGridControl控件的绑定对象为自己。
/// </summary>
public XtraForm1()
{
InitializeComponent();

checkBtnPropertySort.CheckedChanged += new EventHandler(checkBtnSort);
checkBtnAZSort.CheckedChanged += new EventHandler(checkBtnSort);

SetBarButtonToolTip(checkBtnPropertySort, "分组排序");
SetBarButtonToolTip(checkBtnAZSort, "按字母排序");
this.checkBtnPropertySort.Image = Image.FromFile("Categorized.png");
this.checkBtnAZSort.Image = Image.FromFile("Alphabetical.png");
checkBtnPropertySort.Checked = true;

propertyGridControl.SelectedObject = propertyGridControl;
}

//CheckButton.CheckeChange事件
void checkBtnSort(object sender, EventArgs e)
{
CheckButton thisChk = (CheckButton)sender;
if (thisChk == checkBtnPropertySort)
{
if (checkBtnPropertySort.Checked)
SetBarButtonDown(checkBtnAZSort, false);
else
SetBarButtonDown(checkBtnAZSort, true);
}
else
{
if (checkBtnAZSort.Checked)
SetBarButtonDown(checkBtnPropertySort, false);
else
SetBarButtonDown(checkBtnPropertySort, true);
}

UpdatePropertyGrid();
}

//设置按钮的鼠标悬浮气泡提示信息
static void SetBarButtonToolTip(CheckButton chkBtn, string value)
{
SuperToolTip superToolTip = new SuperToolTip();
ToolTipTitleItem toolTipTitleItem = new ToolTipTitleItem();
toolTipTitleItem.Text = value;
superToolTip.Items.Add(toolTipTitleItem);
chkBtn.SuperTip = superToolTip;
}

//设置按钮是否按下
void SetBarButtonDown(CheckButton chkBtn, bool value)
{
chkBtn.CheckedChanged -= new EventHandler(checkBtnSort);
chkBtn.Checked = value;
chkBtn.CheckedChanged += new EventHandler(checkBtnSort);
}

//更变控件排序方式
void UpdatePropertyGrid()
{
this.propertyGridControl.OptionsView.ShowRootCategories = this.checkBtnPropertySort.Checked;
}
}
}


搜索
转自:http://www.cnblogs.com/andrew-blog/archive/2012/08/08/PropertyGridControl.html?utm_source=tuicool
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: