常用控件:

  包括: Button控件、CheckBox控件、HyperlinkButton控件、Iamege控件、ListBox控件、PasswordBox控件、ProgressBar控件、RadioButton控件、Slider控件、TextBlock控件、TextBox控件、WebBrower控件。

创建控件

  创建控件一般有三种方法:

  1.通过直接拖拉控件实现 ;

  2.在托管代码中直接创建,如: Button button=new Button(); button.content="按钮";

  3.在XAML中添加控件,如 <Button Name="button" Content="按钮">。

   相对来说,我比较喜欢第3种方法。

修改控件属性

  修改空间按钮一般有两种方式:

    1.通过C#设置控件属性,如: Button button=new Button(); button.content="按钮"; button.Width="50"; button.Height="60";

    2.通过XAML设置控件属性,如: <Button Name="button" Content="按钮" Height="60" Width="50">

给控件添加事件

  给控件添加事件的方法:

    1.在XAML中添加事件 先在xaml中添加代码,然后切换到后台完善事件;

    2.在C#中添加事件 首先设置控件的名称,然后在托管代码中添加事件,并实现事件函数。

      如: button.Click+=new RoutedEventHandler(button_Click)

        void button_Click(object sender,RoutedEventArgs e) { }

常用控件的使用:

  CheckBox控件:

    CheckBox有三种状态:选中、不选中、不确定。

    CheckBox常用属性有IsCheckBox,IsThreeState IsCheckBox:判断checkbox是否为选中状态,如:

1 if(checkBox1.IsCheckBox=ture)
2 {
3 messgeBox.show("checkBox为选中状态");
4 }

      IsThreeState:获取checkbox控件的三种状态。当值为True时,处于选中状态;当值为False时处于没有选中状态;当属性值为null时,处于不确定状态。

  Image控件:

    Image控件Stretch属性的四种状态,如:

1 private  void button_Click(object sender,RoutedEventArgs e)
2 {
3 image1.Stretch=Stretch.Uniform;
4 //image1.Stretch=Stretch.None;
5 //image1.Stretch=Stretch.Fill;
6 //image1.Stretch=Stretch.UniformToFill;
7 }

  ListBox控件

    Image控件包含多个ListItem数据项,通过添加多个Item实现向ListItem控件添加更多的数据。listbox常用的事件为SelectionChanged。 如:

1 private void ListBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
2 {
3 ListBoxItem selectionItem = ListBox1.SelectedItem as ListBoxItem;
4 textBlock1.Text = " You selected " + selectionItem.Content;
5 }

  PasswordBox控件

    主要属性有:

      Password:设置passwordbox的初始化字符;

      IsEnabled:只有当IsEnable为True时,控件才可以使用;

      MaxLength:控件最多能输入的字符数;

      PasswordChar:设置或更改代替字符。

    如:

1 <PasswordBox x:Name="MyPWBox1" Margin="20,10,0,0" PasswordChanged="MyPWBox1_PasswordChanged" MaxLength="8" Height="35" Width="200" HorizontalAlignment="Left" />
1 private void MyPWBox1_PasswordChanged(object sender, RoutedEventArgs e) {
2 ReadOnlyTB.Text = MyPWBox1.Password;
3 }

  ProgressBar控件

    IsIndeterminate 属性确定 ProgressBar 的外观。 当 IsIndeterminate 设置为 true 以显示重复模式。当IsIndeterminate 设置为 false 以基于值填充条。 当 IsIndeterminate 为 false 时,可以使用 Minimum 和 Maximum 属性指定范围。 默认情况下,Minimum 为 0,Maximum 为 100。 若要指定进度值,设置 Value 属性即可。如:

1 <ProgressBar x:Name="pg1" Value="100"  Margin="10" Maximum="200" Height="15" IsIndeterminate="False" />

  RadioButton控件

    RadioButton 是一个通常用作 RadioButton 控件组中项目的控件。 可以创建单个 RadioButton。 可以通过将 RadioButton 控件放入父控件或者设置每个 RadioButton 上的 GroupName 属性来对该控件进行分组。 RadioButton 和 CheckBox 控件的功能相似:它们提供用户可以选择或清除的选项。 当 RadioButton 元素分在一组中时,按钮之间会互相排斥。 用户一次只能选择 RadioButton 组中的一项。 RadioButton 有两种状态:选中、未选中。 是否选中了 RadioButton 由其 IsChecked 属性的状态决定。 RadioButton 其内容属性为 Content。 示例演示两个面板,其中各包含三个单选按钮。 每个面板各有一个单选按钮分到同一组中。 每个面板中的其他两个单选按钮未进行显式分组,这意味着它们分到同一组中,因为它们共享同一父控件。 运行该示例并选择一个单选按钮时,TextBlock 将显示组名称,如果该单选按钮无显式组名称,则显示"grouped to panel"(归到面板一组中)。此外还显示该单选按钮的名称。

1 private void HandleCheck(object sender, RoutedEventArgs e)
2 {
3 RadioButton rb = sender as RadioButton;
4 choiceTextBlock.Text = "You chose: " + rb.GroupName + ": " + rb.Name;
5 }
1 <TextBlock Text="First Group:"  Margin="5" />
2 <RadioButton x:Name="TopButton" Margin="5" Checked="HandleCheck" GroupName="First Group" Content="First Choice" />

  TextBox控件

    TextBox属性:HorizontalScrollBarVisibility,获取或设置水平滚动条的可见性。 TextBox常用事件: KeyDown,在虚拟或真实键盘某个键按下时发生。 TextChanged,在文本框中的内容更改时发生。 SelectionChanged,在文本选定内容更改后发生。

  WebBrowser控件

    应始终设置 WebBrowser 控件的 Height 和 Width,因为其默认 Height 和 Width 为 0。

    可以指定要在 WebBrowser 控件中以多种方式在显示的 HTML 内容。 调用 NavigateToString(String) 方法并传递一个包含您要显示的 XAML 内容的字符串。将 Source 属性设置为完全限定 URI 或相对 URI。 调用 Navigate(Uri) 方法并将一个完全限定的或相对的 URI 传递给您要显示的 HTML 内容。

    下面的示例演示 WebBrowser,它的 Source 属性设置为 HTML 页面。 在按钮事件处理程序中,WebBrowser 源通过调用 Navigate(Uri) 方法更改为不同的 HTML 页。

1 private void Button1_Click(object sender, RoutedEventArgs e)
2 {
3 WB1.Navigate(new Uri("http://localhost/HTMLPage2.htm"));
4 }

windows phone控件的更多相关文章

  1. 如何:对 Windows 窗体控件进行线程安全调用

    http://msdn.microsoft.com/zh-cn/library/ms171728(VS.90).aspx http://msdn.microsoft.com/zh-cn/library ...

  2. 用于列出选项的Windows窗体控件

    可以提供选项列表的控件有ListBox.ComboBox.CheckedListBox,如何正确的使用和选择这些控件,下面对此进行讨论.首先对这三种控件的功能分别进行说明: ListBox ListB ...

  3. c#中跨线程调用windows窗体控件

    c#中跨线程调用windows窗体控件解决. 我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题.然而我们并不能用传统方法来做这个问题,下面我将详细的介绍.首先来 ...

  4. Delphi一共封装(超类化)了8种Windows基础控件和17种复杂控件

    超类化源码: procedure TWinControl.CreateSubClass(var Params: TCreateParams; ControlClassName: PChar); con ...

  5. c#中如何跨线程调用windows窗体控件

    c#中如何跨线程调用windows窗体控件?   我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题.然而我们并不能用传统方法来做这个问题,下面我将详细的介绍.首 ...

  6. 如何跨线程调用Windows窗体控件

    通过一个子线程来操作主线程中的控件,但是,这样作会出现一个问题(如图1所示),就是TextBox控件是在主线程中创建的,在子线程中并没有对其进行创建,也就是从不是创建控件的线程访问它.那么,如何解决跨 ...

  7. 在WPF中添加Windows Form控件(包括 ocx控件)

      首先,需要向项目中的reference添加两个dll,一个是.NET库中的System.Windows.Forms,另外一个是WindowsFormsIntegration,它的位置一般是在C:\ ...

  8. Windows标准控件

    学习目的 学习创建, 使用Windows标准控件(按钮, 滚动条, 静态控件, 列表框, 编辑框, 组合框); 学习使用子窗口控件操作函数(EnableWindow, MoveWindow, SetW ...

  9. KRBTabControl(中文)Windows选项卡控件

    本文阐述了如何在C#使自定义Windows选项卡控件. Download demo project - 82.4 KB Download source - 252 KB 介绍 本文讨论如何使用.NET ...

  10. Windows 打印控件

    Windows窗体的PrintDocument组件用于设置一些属性,这些属性说明,在基于Windows的应用程序中要打印说明内容以及打印文档的能力,可将它与PrintDialog组件一起使用来控制文档 ...

随机推荐

  1. 2.2sklearn.preprocessing.PolynomialFeatures生成交叉特征

    sklearn.preprocessing.PolynomialFeatures原文 多项式生成函数:sklearn.preprocessing.PolynomialFeatures(degree=2 ...

  2. gitblit 搭建本地git服务器

    本文主要描述gitblit搭建本地服务器

  3. Python模块 os.walk

    Os.walk os.walk(top,topdown=True,onerror=None,followlinks=False) os.walk()是python中内置(built-in)的目录树生成 ...

  4. elisp 编程 if 特殊表

    elisp中的 if 特殊表与其他语言中的 if 语句逻辑上并无二致,关键在于如何使用. (if (> 4 3) (message "4 is greater than 3" ...

  5. STM32的USART发送数据时如何使用TXE和TC标志

    在USART的发送端有2个寄存器,一个是程序可以看到的USART_DR寄存器,另一个是程序看不到的移位寄存器,对应USART数据发送有两个标志,一个是TXE=发送数据寄存器空,另一个是TC=发送结束. ...

  6. BZOJ 1602 牧场行走

    直接写一波Lca就好了 #include<cstdio> #include<cmath> #include<algorithm> using namespace s ...

  7. bupt summer training for 16 #6 ——图论

    https://vjudge.net/contest/174020 A.100条双向边,每个点最少连2个边 所以最多100个点,点的标号需要离散化 然后要求恰好经过n条路径 快速幂,乘法过程就是flo ...

  8. [转]十五天精通WCF——第五天 你需要了解的三个小技巧

    一: 服务是端点的集合 当你在开发wcf的时候,你或许已经注意到了一个service可以公布多个endpoint,确实是这样,在wcf中有一句很经典的话,叫做“服务是端点的集合",就 比如说 ...

  9. [Python]Django部署问题

    给客户部署系统 Apache + mod_wsgi + django 打开浏览器妈的死活就是pending状态 运来mod_wsgi用的32位,操作系统64位(window server 2003 r ...

  10. HDU 5387 Clock (MUT#8 模拟)

    [题目链接]:pid=5387">click here~~ [题目大意]给定一个时间点.求时针和分针夹角,时针和秒针夹角,分针和秒针夹角 模拟题,注意细节 代码: #include&l ...