桌面软件样式控制

苏打维c柠檬茶哦 2018-03-29 09:01:00
在网页中,我们可以通过css等精确控制各种元素的样式,使其符合人的审美,在桌面软件的开发中,我们是如何控制各种控件的样式的呢?比如在winform中我们怎样自己设计一个按钮的样式?
...全文
280 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2018-03-29
  • 打赏
  • 举报
回复
凡事都要引经据典,那是工程师,而不是科学家 正因为没有,才需要创造 wpf 是很不错,但不也是从 form 中创造出来的吗 相信你是可以创造出基于 CSS 描述的换肤控件来的
xuzuning 2018-03-29
  • 打赏
  • 举报
回复
如果你认为开发有难度 不妨可以试试 IrisSkin,看看他是否能满足你的需要
  • 打赏
  • 举报
回复
其实吧,也有个办法可以做,把所有的controls拉到一个集合里,然后对其进行配色,按照controls列表根据容器/控件的类型进行浅色和深色的设置,也能做出来点效果,但是真的不要在用gdi了,太累了。
  • 打赏
  • 举报
回复
所谓样式,或者叫做“主题”,就是用一个关键 key 来一键切换整套设计。这在 xaml、html 中都有技术层次概念。但是 winform 是30多年前的技术,根本没有这套概念。第三方类库做了一些开发,那么你就需要找一些第三方的皮肤控制的东西。当然那不是原生的,在性能稳定性等等方面都没有保证。
xuzuning 2018-03-29
  • 打赏
  • 举报
回复
CSS 也只是改变元素的外观属性,而 winform 的控件都有对应的属性 所以你完全可以在适当的地方通过解释 CSS 来改变控件样式,这当然是写程序,而不是手工逐一修改 从而达到外观随描述的改变而改变的目的
  • 打赏
  • 举报
回复
winform并没有样式概念,所有的控件基本上都是“各自为战、自己管自己”地,根本不是统一样式系统来协调的。除非你自己做一套 winform 控件。
公西雒 2018-03-29
  • 打赏
  • 举报
回复
我知道四种方案:
1.设置Button控件属性(推荐)
这种方法最简单,最易实现。参考下面两张图可设置背景色前景色等颜色,如果不满意,还可以设置背景图来使按钮呈现想要的图片样式。


2.GDI+重绘
onpaint事件实现gdi+重绘,不推荐,效果不好,可能会出现闪烁。
3.自定义控件
UserControl可以实现自己想要的功能,可以布局多个控件,但样式上仍需要对属性进行设置,不如方案1方便、简洁。
4.嵌入WPF控件
对于样式有高要求的,建议还是直接用WPF做,抛弃winform。WPF确实能做出许多winform做不到的效果和动画,也可以用WPF做出好看的控件再嵌入winform中,但既然想要好看的样式又使用了WPF控件,为何不直接用WPF开发呢?
exception92 2018-03-29
  • 打赏
  • 举报
回复
背景色,字体样式,前景色,边框样式等等很多需要设置。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧