西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴(lài)的軟件下載站!
軟件
軟件
文章
搜索

首頁(yè)編程開(kāi)發(fā)其它知識(shí) → WPF數(shù)據(jù)觸發(fā)器實(shí)現(xiàn)實(shí)例代碼

WPF數(shù)據(jù)觸發(fā)器實(shí)現(xiàn)實(shí)例代碼

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:孜孜不倦的程序員時(shí)間:2012/10/8 14:54:42字體大。A-A+

作者:孜孜不倦的程序員點(diǎn)擊:57次評(píng)論:0次標(biāo)簽: WPF

Actipro WPF Studiov11.1.0541 注冊(cè)版
  • 類(lèi)型:編程控件大小:58.9M語(yǔ)言:英文 評(píng)分:6.6
  • 標(biāo)簽:
立即下載

WPF觸發(fā)器

    屬性觸發(fā)器——當(dāng)依賴(lài)屬性的值改變時(shí)調(diào)用。

    數(shù)據(jù)觸發(fā)器——當(dāng)普通.NET屬性的值改變時(shí)調(diào)用。

    事件觸發(fā)器——當(dāng)路由事件被觸發(fā)時(shí)調(diào)用。

1. 數(shù)據(jù)觸發(fā)器示例:數(shù)字從0~9計(jì)數(shù),當(dāng)數(shù)字變?yōu)?時(shí)候,數(shù)字變化成紅色并加粗進(jìn)行顯示。

    0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> 8 -> 9 ->0

2. 新建WPF項(xiàng)目,項(xiàng)目名稱(chēng):DataTriggerDemo。

3. 新增Views文件夾,右鍵Views文件夾,新增用戶(hù)控件Timer.xaml;并在頁(yè)面中加入Button和Textblock控件。

    

    

4. 新增ViewModels文件夾,右鍵ViewModels文件夾,新增類(lèi)TimerViewModel.cs;在代碼中增加StartCommand命令和DisplayNumber屬性。

    

1 private int displayNumber = 0;
2 public int DisplayNumber
3 {
4     get { return displayNumber; }
5     set
6     {
7         displayNumber = value;
8         NotifyPropertyChanged("DisplayNumber");
9     }
10 }
11
12 private ICommand startCommand;
13 public ICommand StartCommand
14 {
15     get
16     {
17         if (startCommand == null)
18         {
19             startCommand = new RelayCommand(param =>
20             {
21                 Start();
22             }, param => true);
23         } return startCommand;
24     }
25 }

5. 在TimerViewModel中增加計(jì)數(shù)方法。

1 private void Start()
2 {
3     new Timer(new TimerCallback(param =>
4     {
5         DisplayNumber++;
6         if (DisplayNumber == 10)
7         {
8             DisplayNumber = 0;
9         }
10     })).Change(0, 1000);
11 }

6. 在Timer.xaml頁(yè)面增加數(shù)據(jù)觸發(fā)器代碼。

1 <UserControl.Resources>
2     <Style TargetType="TextBlock">
3         <Style.Triggers>
4             <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},Path=Text}" Value="8">
5                 <Setter Property="Foreground"
6                         Value="Red"></Setter>
7                 <Setter Property="FontWeight"
8                         Value="Bold"></Setter>
9                 <Setter Property="FontSize"
10                         Value="29"></Setter>
11             </DataTrigger>
12         </Style.Triggers>
13     </Style>
14 </UserControl.Resources>

7. 運(yùn)行效果。

    

點(diǎn)擊這里下載源代碼。

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過(guò)難過(guò)
    • 5 囧
    • 3 圍觀圍觀
    • 2 無(wú)聊無(wú)聊

    熱門(mén)評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱(chēng):
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)