狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

經(jīng)典的WPF入門實(shí)例

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

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

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

```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. 數(shù)據(jù)綁定: 這個(gè)例子展示了如何使用數(shù)據(jù)綁定來將數(shù)據(jù)與界面元素進(jìn)行關(guān)聯(lián)。它展示了一個(gè)簡單的學(xué)生信息列表,并演示了如何通過數(shù)據(jù)綁定顯示和編輯學(xué)生的姓名和年齡。

```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. 命令: 這個(gè)例子展示了如何使用命令來處理用戶界面上的操作。它展示了一個(gè)包含兩個(gè)按鈕的窗口,點(diǎn)擊按鈕時(shí)分別觸發(fā)自定義命令的執(zhí)行。

```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的基本概念和用法,其中包括界面組件的使用、數(shù)據(jù)綁定、命令等。通過學(xué)習(xí)和實(shí)踐這些例子,你可以快速入門并開始開發(fā)自己的WPF應(yīng)用程序。


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