C#:设置控件样式(待补充)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing;
using System.Collections; namespace MyCommanHelper
{
public class ControlStyleHelper
{
#region 字段变量
// Fields
public static int currentCol = -1;
public static bool sort; #endregion #region 网格视图
/// <summary>
/// 初始化网格视图样式
/// </summary>
/// <param name="dataGridView1">网格控件</param>
/// <param name="isReadOnly">是否只读</param>
/// <param name="isForbidSortColumn">是否禁止排序</param>
public static void InitDataGridView(DataGridView dataGridView1, bool isReadOnly, bool isForbidSortColumn)
{
dataGridView1.RowHeadersDefaultCellStyle.BackColor = SystemColors.GradientActiveCaption;
dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = SystemColors.GradientActiveCaption;
dataGridView1.BackgroundColor = Color.White;
DataGridViewCellStyle style = new DataGridViewCellStyle();
style.SelectionBackColor = Color.FromArgb(0x80, 0x80, 0xff);
style.Alignment = DataGridViewContentAlignment.MiddleCenter;
dataGridView1.DefaultCellStyle = style;
dataGridView1.ClearSelection();
dataGridView1.AllowUserToAddRows = false;
dataGridView1.ReadOnly = isReadOnly;
if (isForbidSortColumn)
{
for (int i = 0; i < dataGridView1.Columns.Count; i++)
{
dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
}
}
} #endregion #region 对话框
/// <summary>
/// 初始化对话框模式样式
/// </summary>
/// <param name="frm"></param>
public static void InitFormShowDialogStyle(Form frm)
{
frm.ShowInTaskbar = false;
frm.MaximizeBox = false;
frm.MinimizeBox = false;
frm.ShowIcon = false;
frm.StartPosition = FormStartPosition.CenterScreen;
frm.FormBorderStyle = FormBorderStyle.FixedDialog;
frm.ShowDialog();
} /// <summary>
/// 初始化对话框非模式样式
/// </summary>
/// <param name="frm"></param>
public static void InitFormShowStyle(Form frm)
{
frm.ShowInTaskbar = true;
frm.MaximizeBox = false;
frm.MinimizeBox = false;
frm.ShowIcon = false;
frm.StartPosition = FormStartPosition.CenterScreen;
frm.FormBorderStyle = FormBorderStyle.FixedDialog;
frm.Show();
} #endregion #region 列表视图 /// <summary>
/// 初始化列表视图样式
/// </summary>
/// <param name="listView1">列表视图控件</param>
/// <param name="isCheckBox">是否显示复选框</param>
public static void InitListViewStyle(ListView listView1, bool isCheckBox)
{
listView1.View = View.Details;
listView1.ShowItemToolTips = true;
listView1.GridLines = true;
listView1.FullRowSelect = true;
listView1.CheckBoxes = isCheckBox;
} /// <summary>
/// 对列排序并标示标识
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public static void SortListViewColumn(object sender, ColumnClickEventArgs e)
{
string str3;
char ch = '▼';
string str = ch.ToString().PadLeft(4, ' ');
ch = '▲';
string str2 = ch.ToString().PadLeft(4, ' ');
ListView view = sender as ListView;
if (!sort)
{
sort = true;
str3 = view.Columns[e.Column].Text.TrimEnd(new char[] { '▼', '▲', ' ' });
view.Columns[e.Column].Text = str3 + str2;
}
else if (sort)
{
sort = false;
str3 = view.Columns[e.Column].Text.TrimEnd(new char[] { '▼', '▲', ' ' });
view.Columns[e.Column].Text = str3 + str;
}
if (e.Column == (view.ListViewItemSorter as ListViewColumnSorter).SortColumn)
{
if ((view.ListViewItemSorter as ListViewColumnSorter).Order == SortOrder.Ascending)
{
(view.ListViewItemSorter as ListViewColumnSorter).Order = SortOrder.Descending;
}
else
{
(view.ListViewItemSorter as ListViewColumnSorter).Order = SortOrder.Ascending;
}
}
else
{
(view.ListViewItemSorter as ListViewColumnSorter).SortColumn = e.Column;
(view.ListViewItemSorter as ListViewColumnSorter).Order = SortOrder.Ascending;
}
((ListView)sender).Sort();
} /// <summary>
/// 内部类
/// Nested Types
/// </summary>
public class ListViewColumnSorter : IComparer
{ #region 变量 // Fields
private int ColumnToSort = 0;
private CaseInsensitiveComparer ObjectCompare = new CaseInsensitiveComparer();
private SortOrder OrderOfSort = SortOrder.None; #endregion #region 属性 // Properties
public SortOrder Order
{
get
{
return this.OrderOfSort;
}
set
{
this.OrderOfSort = value;
}
} public int SortColumn
{
get
{
return this.ColumnToSort;
}
set
{
this.ColumnToSort = value;
}
} #endregion #region 方法 // Methods
/// <summary>
/// 依据double类型列的值比较
/// </summary>
/// <param name="x">ListViewItem</param>
/// <param name="y">ListViewItem</param>
/// <returns></returns>
public int Compare(object x, object y)
{
ListViewItem item = (ListViewItem)x;
ListViewItem item2 = (ListViewItem)y;
int num = this.ObjectCompare.Compare(ConvertHelper.ObjectToDouble(item.SubItems[this.ColumnToSort].Text), ConvertHelper.ObjectToDouble(item2.SubItems[this.ColumnToSort].Text));
if (this.OrderOfSort == SortOrder.Ascending)
{
return num;
}
if (this.OrderOfSort == SortOrder.Descending)
{
return -num;
}
return 0;
}
#endregion }
#endregion }
}
C#:设置控件样式(待补充)的更多相关文章
- UWP入门(四)--设置控件样式
原文:UWP入门(四)--设置控件样式 官方定义:可以使用 XAML 框架通过多种方式自定义应用的外观. 通过样式可以设置控件属性,并重复使用这些设置,以便保持多个控件具有一致的外观. 可分享至不同e ...
- QSS基础-设置控件样式
1.QSS基础-设置同类控件样式'''QSS基础:Qt Style SheetQt样式表用于设置控件的样式和风格(比如控件的背景色,字体颜色,字体大小等)和CSS的功能比较相似,功能相似''' fro ...
- UWP 设置控件样式四种方法
1.隐式方法,通过仅指定 Style 的 TargetType.(设置全部的Button样式) <Page.Resources > <Style TargetType="B ...
- qt 设置程序控件样式
1. 以资源文件的形式设置控件样式 QFiledata(QString(":/style.qss")); QStringqssFile; if(data.open(QFile::R ...
- WPF:DataTemplateSelector设置控件不同的样式
原文 WPF:DataTemplateSelector设置控件不同的样式 最近想实现这么个东西,一个ListBox, 里面的ListBoxItem可能是文本框.下拉框.日期选择控件等等. 很自然的想到 ...
- IrisSkin 单独控件样式设置 不使用皮肤样式
可以设置控件的Tag为this.skinEngine1.DisableTag [DefaultValue()] [Description("If you do not want skin t ...
- WPF设置控件获取键盘焦点时的样式FocusVisualStyle
控件获取焦点除了用鼠标外,可以通过键盘来获取,比如Tab键或者方向键等,需要设置控件获取键盘焦点时的样式,可以通过设置FrameworkElemnt.FocusVisualStyle属性, 因为几乎所 ...
- WPF设置全局控件样式
原文:WPF设置全局控件样式 方法: 在资源文件APP.XAML中添加如下资源 <Application x:Class="_360UI.App" xmlns="h ...
- WPF 自定义TabControl控件样式
一.前言 程序中经常会用到TabControl控件,默认的控件样式很普通.而且样式或功能不一定符合我们的要求.比如:我们需要TabControl的标题能够居中.或平均分布:或者我们希望TabContr ...
随机推荐
- Petuum - Careers
Petuum - Careers Cloudformation
- iptables学习与研究(使用LOG记录失败日志)
原文地址: http://blog.csdn.net/fafa211/article/details/2307581 通常情况下,iptables的默认政策为DROP,不匹配的数据包将被直接丢弃.但在 ...
- Windows 配置 Apache Python CGI
提示:安装Apache可参考 https://jingyan.baidu.com/article/0eb457e53c019f03f1a905c7.html 1. 打开URL: https://ww ...
- 【spring cloud】分布式ID,雪花算法
分布式ID生成服务 参考地址:https://blog.csdn.net/wangkang80/article/details/77914849 算法描述: 最高位是符号位,始终为0,不可用. 41位 ...
- gradle 2.1构建android出现错误的解决方案
转自:http://www.tuicool.com/articles/YJNJbuA 使用不同版本Gradle构建Andorid 出现Gradle version xxxx is required 坑 ...
- lodop同一页面一次性打印多次
怎么让打印机打印双份?lodop有设置吗?SET_PRINT_COPIES名称:设置打印份数格式:SET_PRINT_COPIES(intCopies)功能:设置本次打印的份数结果:返回逻辑结果,成功 ...
- (原创)2. WPF中的依赖属性之二
1 依赖属性 1.1 依赖属性最终值的选用 WPF属性系统对依赖属性操作的基本步骤如下: 第一,确定Base Value,对同一个属性的赋值可能发生在很多地方.还用Button的宽度来进行举例,可能在 ...
- 14.ThreadLocal
ThreadLocal 1.线程局部变量,是一种多线程并发访问变量的解决方案,与同步技术 synchronize 加锁的方式不同,threadlocal完全不提供锁,而使用 空间 ...
- 数学图形(1.34) peut aussi曲线
这是一种左右对称的类圆形曲线 #http://www.mathcurve.com/courbes2d/lissajous/lissajous2.shtml vertices = t = to (*PI ...
- DRP经验总结
思想 指导 从开始看DRP项目到完成已经有三个月左右的时间了,这是一个足够长的视频,当看第一集的时候就再想,啥时候看完呢? 其间,也断断续续,有时看的效率高有时相反,有时几天看不了几集,好在总算看完了 ...