- 1、本文档共322页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WPF 控件部分
控件概述
Windows Presentation Foundation (WPF) 附带了许多几乎可以在所有 Windows 应用程序中使用的常见 UI 组件,其中包括 Button、
Label、TextBox、Menu 和 ListBox。以前,这些对象被称为控件。不过,WPF SDK 仍继续使用术语“控件”,泛指任何代表应用程序中可
见对象的类。请注意,类不必从 Control 类继承,即可具有可见外观。从 Control 类继承的类包含一个 ControlTemplate,允许控件的使
用方在无需创建新子类的情况下根本改变控件的外观。 本主题讨论在 WPF 中使用控件(包括从 Control 类继承的控件以及不从该类继承
的控件)的常见方式。
创建控件的实例
可以通过使用可扩展应用程序标记语言 (XAML) 或以代码形式向应用程序添加控件。 下面的示例演示如何创建一个向用户询问其姓名的简
单应用程序。 此示例在 XAML 中创建六个控件:两个标签、两个文本框及两个按钮。所有控件都可以按相似的方式创建。
XAML 复制代码
Grid
Grid.RowDefinitions
RowDefinition Height=30/
RowDefinition Height=30/
RowDefinition Height=30/
RowDefinition/
/Grid.RowDefinitions
Grid.ColumnDefinitions
ColumnDefinition/
ColumnDefinition/
/Grid.ColumnDefinitions
Label
Enter your first name:
/Label
TextBox Grid.Row=0 Grid.Column=1
Name=firstName Margin=0,5,10,5/
Label Grid.Row=1
Enter your last name:
/Label
TextBox Grid.Row=1 Grid.Column=1
Name=lastName Margin=0,5,10,5/
Button Grid.Row=2 Grid.Column=0
Name=submit Margin=2
View message
/Button
Button Grid.Row=2 Grid.Column=1
Name=Clear Margin=2
Clear Name
/Button
/Grid
下面的示例以代码的形式创建同一应用程序。为了简单起见,示例中不包括 Grid grid1 的创建。grid1 与前面的 XAML 示例内容具有
相同的列和行定义。
C# 复制代码
Label firstNameLabel;
Label lastNameLabel;
TextBox firstName;
TextBox lastName;
Button submit;
Button clear;
void CreateControls()
{
firstNameLabel = new Label();
firstNameLabel.Content = Enter your first name:;
grid1.Children.Add(firstNameLabel);
firstName = new TextBox();
firstName.Margin = new Thickness(0, 5, 10, 5);
Grid.SetColumn(firstName, 1);
grid1.Children.Add(firstName);
lastNameLabel = new Label();
lastNameLabel.Content = Enter your last name:;
Grid.SetRow(lastNameLabel, 1);
grid1.Children.Add(lastNameLabel);
lastName = new TextBox();
lastName.Ma
文档评论(0)