C# 制作指示灯(经典)
生活随笔
收集整理的這篇文章主要介紹了
C# 制作指示灯(经典)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
群友提問:C#中的指示燈怎么做,改變狀態(tài)有什么好的方法嗎?
制作指示燈的方法有很多中:比如:
通過GDI+繪制自定義LED指示燈控件;
調(diào)用現(xiàn)成的第三方控件庫;
采用label標(biāo)簽,通過改變背景色實(shí)現(xiàn);等等
本文就以第三種方式展開講解
01
—
實(shí)現(xiàn)效果
02
—
實(shí)現(xiàn)代碼
前臺代碼:
添加兩個按鈕和一個標(biāo)簽:
<StackPanel><Border BorderBrush="Red"></Border><Button Name="StartBtn" Content="Start"/><Button Name="StopBtn" Content="Stop"/><Label Name="DisplayLbl" Visibility="{Binding DisplaySwitch}" FontSize="200"HorizontalAlignment="Center" VerticalAlignment="Center"Content="{Binding LabelText}" Foreground="{Binding ForeColor}" /></StackPanel>后臺代碼:
①安裝PropertyChanged.Fody,using PropertyChanged;然后在類前面添加? ?[AddINotifyPropertyChangedInterface],類中所有屬性變更后就會自動通知界面變更;
②通過DisplaySwitch 屬性控制指示燈的顯示或者隱藏,然后通過界面的start按鈕啟動指示燈,stop關(guān)閉指示燈;
③指示燈背景色的改變通過獨(dú)立線程控制,跨線程修改UI線程控件屬性使用Caliburn.Micro框架下的 ?Execute.OnUIThread(()=>{});實(shí)現(xiàn)。
03
—
? ? ? ? ? ? ? ? ? ?? ? ? 其它相關(guān):Brush顏色轉(zhuǎn)換
1、String轉(zhuǎn)換成ColorColor?color?=?(Color)ColorConverter.ConvertFromString(string);2、String轉(zhuǎn)換成BrushBrushConverter?brushConverter?=?new?BrushConverter();Brush?brush?=?(Brush)brushConverter.ConvertFromString(string);3、Color轉(zhuǎn)換成BrushBrush?brush?=?new?SolidColorBrush(color));4、Brush轉(zhuǎn)換成Color有兩種方法:(1)先將Brush轉(zhuǎn)成string,再轉(zhuǎn)成Color。Color?color=?(Color)ColorConverter.ConvertFromString(brush.ToString());(2)將Brush轉(zhuǎn)成SolidColorBrush,再取Color。Color?color=?((SolidColorBrush)CadColor.Background).Color; 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的C# 制作指示灯(经典)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 看看这套WPF开源基础控件库:WPFDe
- 下一篇: 使用 Dapr 缩短软件开发周期,提高生