我自己想做一个按钮,想改变其边框的颜色,但是找了好多资料都没有找到,希望各位高手能帮助小弟.
解决方案 »
- XAML文件中的代码
- C#线程问题,高手请进
- C#正则表达式如何排除一个模式?
- 对于分页打印
- WinForm中大数据量的显示问题
- dataGridView行高为什么不能不能设置?
- 求OA系统(asp.net+c#)源代码,redbb看进来
- 我继承CollectionBase,需要实现/调用什么函数才能让OnInsert被调用到?
- 求速度帮忙解决下 C#截取exsl 单元格 aaa.123_asdf_中文字符
- 正做ASP.net+C#的CRM系统,想用WebService实现一个独立于CRM应用的用户服务,在不同的ASP.NET页面间如何处理类似Session的问题?
- sprintf在c#中用设么函数替换
- 急!!!!!!!!!!!!!!!!!!一个简单的打印文件功能。
/// 平坦的Button
/// </summary>
public class FlatButton:Button
{
//边界色,缺省用灰色
private Color _borderColor=Color.Gray; /// <summary>
/// 缺省构造器
/// </summary>
public FlatButton()
{
SetStyle(ControlStyles.ResizeRedraw,true);
this.FlatStyle=FlatStyle.Flat;
this.Paint+=new PaintEventHandler(_Paint);
}
/// <summary>
/// 获取一个值,该值指示控件是否应显示聚焦框,此处重载,禁止显示聚焦框
/// </summary>
protected override bool ShowFocusCues
{
get
{
return false;
}
}
/// <summary>
/// 边界色
/// </summary>
public Color BorderColor
{
set
{
if(value!=_borderColor)
{
_borderColor=value;
Invalidate();
}
}
get
{
return _borderColor;
}
}
/// <summary>
/// 重绘处理事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void _Paint(object sender,System.Windows.Forms.PaintEventArgs e)
{
//e.Graphics.Clear(BackColor);
e.Graphics.DrawRectangle(new Pen(_borderColor),0,0,Width-1,Height-1);
}
}