C# wpf编程CM框架快速入门项目实例
生活随笔
收集整理的這篇文章主要介紹了
C# wpf编程CM框架快速入门项目实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
01
—
事件連接
這會自動將控件上的事件關聯到ViewModel上的方法。
常規約定:
這將導致按鈕的單擊事件調用ViewModel上的“Save”方法。
簡短語法:
<Button cal:Message.Attach="Save">這將再次導致按鈕的“Click”事件調用ViewModel上的“Save”方法。
可以像這樣使用不同的事件:
<Button cal:Message.Attach="[Event MouseEnter] = [Action Save]">可以向方法傳遞不同的參數,如下所示:
<Button cal:Message.Attach="[Event MouseEnter] = [Action Save($this)]">長語法
<UserControl x:Class="Caliburn.Micro.CheatSheet.ShellView"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" xmlns:cal="http://www.caliburnproject.org"> <StackPanel> <TextBox x:Name="Name" /><Button Content="Save"> <i:Interaction.Triggers> <i:EventTrigger EventName="Click"> <cal:ActionMessage MethodName="Save"> <cal:Parameter Value="{Binding ElementName=Name, Path=Text}" /> </cal:ActionMessage> </i:EventTrigger> </i:Interaction.Triggers> </Button> </StackPanel> </UserControl>此語法表達式對于Blend?比較友好。
02
—
數據綁定
這將自動將控件上的依賴項屬性綁定到ViewModel上的屬性。
常規約定:
<TextBox x:Name="FirstName" />將導致TextBox的“Text”屬性綁定到ViewModel的“FirstName”屬性。
明確的寫法:
<TextBox Text="{Binding Path=FirstName, Mode=TwoWay}" />這是綁定屬性的正常方式。
03
—
項目實例
前臺XAML文件:
后臺viemmodel
using Caliburn.Micro; using System.Collections.ObjectModel; using System.Windows; using System.Windows.Controls; using System.Windows.Input;namespace WpfApp8 {class StartViewModel : Screen{ public StartViewModel(){ListBoxItems = new ObservableCollection<string>() { };ListBoxItems.Add("dotNet編程大全");ListBoxItems.Add("Csharp編程大全");ListBoxItems.Add("dotnet工控上位機編程");}public ObservableCollection<string> ListBoxItems { get; set; }public string TextContent { get; set; }public void testBtn(){TextContent = "hello world!";NotifyOfPropertyChange(()=> TextContent);}public void ListBoxItems_MouseUp(object sender, MouseButtonEventArgs e){ListBox listbox = sender as ListBox;MessageBox.Show("當前操作的控件名稱是:"+ listbox.Name);}public void ListBoxItems_SelectionChanged(object sender, SelectionChangedEventArgs e){TextContent = (sender as ListBox).SelectedItem.ToString();NotifyOfPropertyChange("TextContent");}} }04
—
運行結果
05
—
源碼下載
百度網盤鏈接:?? ? ?
鏈接:https://pan.baidu.com/s/1G8aOfOnZ03dGyVFErUiB6Q
提取碼:1314
小編微信:mm1552923 ??
公眾號:dotNet編程大全? ? ??
總結
以上是生活随笔為你收集整理的C# wpf编程CM框架快速入门项目实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT与业务之间的鸿沟根源
- 下一篇: 如何使用 C# 压缩单个文件?