欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

經典的WPF入門實例

admin
2024年2月7日 23:15 本文熱度 626

以下是一些經典的WPF入門實例,它們可以幫助你熟悉并理解WPF的基本概念和用法:

1. Hello, WPF!: 這個例子非常簡單,它展示了一個包含一個按鈕的窗口,并演示了如何處理按鈕的點擊事件。

```xaml<Window x:Class="MyWpfApp.MainWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        Title="Hello, WPF!" Height="200" Width="300">    <Grid>        <Button Content="Click Me" Click="Button_Click" HorizontalAlignment="Center" VerticalAlignment="Center" />    </Grid></Window>```

```csharpusing System.Windows;

namespace MyWpfApp{    public partial class MainWindow : Window    {        public MainWindow()        {            InitializeComponent();        }

       private void Button_Click(object sender, RoutedEventArgs e)        {            MessageBox.Show("Hello, WPF!");        }    }}```


2. 數據綁定: 這個例子展示了如何使用數據綁定來將數據與界面元素進行關聯。它展示了一個簡單的學生信息列表,并演示了如何通過數據綁定顯示和編輯學生的姓名和年齡。

```xaml<Window x:Class="MyWpfApp.MainWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        Title="Student List" Height="300" Width="400">    <StackPanel>        <ListBox x:Name="lstStudents" DisplayMemberPath="Name" SelectionChanged="lstStudents_SelectionChanged" />        <TextBox x:Name="txtName" Text="{Binding SelectedItem.Name, ElementName=lstStudents}" />        <TextBox x:Name="txtAge" Text="{Binding SelectedItem.Age, ElementName=lstStudents}" />    </StackPanel></Window>```

```csharpusing System.Collections.ObjectModel;using System.ComponentModel;using System.Windows;

namespace MyWpfApp{    public partial class MainWindow : Window    {        public ObservableCollection<Student> Students { get; set; }

       public MainWindow()        {            InitializeComponent();            DataContext = this;

           Students = new ObservableCollection<Student>            {                new Student { Name = "Alice", Age = 20 },                new Student { Name = "Bob", Age = 22 },                new Student { Name = "Charlie", Age = 19 }            };

           lstStudents.ItemsSource = Students;        }

       private void lstStudents_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)        {            CollectionViewSource.GetDefaultView(Students).Refresh();        }    }

   public class Student : INotifyPropertyChanged    {        private string name;        public string Name        {            get { return name; }            set            {                if (name != value)                {                    name = value;                    OnPropertyChanged(nameof(Name));                }            }        }

       private int age;        public int Age        {            get { return age; }            set            {                if (age != value)                {                    age = value;                    OnPropertyChanged(nameof(Age));                }            }        }

       public event PropertyChangedEventHandler PropertyChanged;

       protected virtual void OnPropertyChanged(string propertyName)        {            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));        }    }}```


3. 命令: 這個例子展示了如何使用命令來處理用戶界面上的操作。它展示了一個包含兩個按鈕的窗口,點擊按鈕時分別觸發自定義命令的執行。

```xaml<Window x:Class="MyWpfApp.MainWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        Title="Command Example" Height="200" Width="300">    <StackPanel>        <Button Content="Say Hello" Command="{Binding SayHelloCommand}" />        <Button Content="Say Goodbye" Command="{Binding SayGoodbyeCommand}" />    </StackPanel></Window>```

```csharpusing System;using System.Windows;using System.Windows.Input;

namespace MyWpfApp{    public partial class MainWindow : Window    {        public ICommand SayHelloCommand { get; set; }        public ICommand SayGoodbyeCommand { get; set; }

       public MainWindow()        {            InitializeComponent();            DataContext = this;

           SayHelloCommand = new RelayCommand(SayHello);            SayGoodbyeCommand = new RelayCommand(SayGoodbye);        }

       private void SayHello(object parameter)        {            MessageBox.Show("Hello, WPF!");        }

       private void SayGoodbye(object parameter)        {            MessageBox.Show("Goodbye, WPF!");        }    }

   public class RelayCommand : ICommand    {        private Action<object> execute;        private Func<object, bool> canExecute;

       public event EventHandler CanExecuteChanged        {            add { CommandManager.RequerySuggested += value; }            remove { CommandManager.RequerySuggested -= value; }        }

       public RelayCommand(Action<object> execute)            : this(execute, null)        {        }

       public RelayCommand(Action<object> execute, Func<object, bool> canExecute)        {            this.execute = execute;            this.canExecute = canExecute;        }

       public bool CanExecute(object parameter)        {            return canExecute == null || canExecute(parameter);        }

       public void Execute(object parameter)        {            execute(parameter);        }    }}```

這些例子涵蓋了WPF的基本概念和用法,其中包括界面組件的使用、數據綁定、命令等。通過學習和實踐這些例子,你可以快速入門并開始開發自己的WPF應用程序。


該文章在 2024/2/7 23:15:35 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved