【转】黑马程序员_WPF基础属性、控件和语法

1、WPF事件中的sender

——WPF中所有事件响应方法第一个参数都是sender,代表触发事件的控件对象,是object类型,需要类型转换使用。

——应用:多个按钮的Click共享一个事件处理方法

 

2、集合List<T>

——有时候不能预先确定长度或者需要动态修改内容和长度,这时候可以使用List<T>泛型集合。

——List<T>,可以看做是动态的数组。Add、Clear、Count、Remove、RemoveAt、ToArray(转换为数组)

——List<T>可以使用foreach遍历

 

3、控件通用属性:

——Visibility控件是否可见:枚举类型,Visible表示可见,Collapsed不可见。

——IsEnabled:控件是否可用,bool类型

——Background:背景色

——FontSize:字体大小

 

4、一些常用控件:

(1)Background:背景色 Foreground:前景色 FontSize:字体颜色 PasswordBox:密码框
  TextWrapping:是否自动换行,Wrap:自动换行 noWrap:不自动换行
  CheckBox:复选框 IsChecked:是否选中 MaxLength:设置最大字符数

 

(2)读取password框中的内容要用*.password

 

(3)int? i = null; //类型后+?表示是可空的数据类型。

 

(4)image控件:source属性为图片路径,相对路径

 

(5)ProgressBar:进度条。 几个属性:Maximum:最大值 minimum:最小值 value:指定值
  IsIndeterminate = true:不确定模式

 

(6)StackPanel 可扩展面板

 

(7)VerticalAlignment = “true” 使控件内容居中显示

 

(8)动态创建button
 Button btn = new Button();
 Grid.setRow(btn,i);
 Grid.setColumn(btn,j);
 mypanel.Children.Add(btn);

 

(9)动态创建图片

Image img = new Image();
img.Source = new BitmapSource(new Uri("Images/2.jpg",UriKind.Relative));
Grig.setRow(img,i);
Grid.setColumn(img,j);
mypanel.Children.Add(img);

 

(10)随机数
 Random rm = new Random();
 rm.Next(0,10); //括号内指定范围

 

(11)DockPanel:可以让空间始终保持靠上、下、左、右。 Menu:菜单栏
 示例: <Grid>
        <DockPanel>
            <Menu DockPanel.Dock="Top">
                <MenuItem Header="文件"></MenuItem>
                <MenuItem Header="编辑"></MenuItem>
            </Menu>
            <TextBox DockPanel.Dock="Bottom"></TextBox>
        </DockPanel>
    </Grid>
    //DockPanel有优先级,谁先声明,谁先占空间

 

5、WPF中一些常用的属性设置

(1)把窗体设置为不可修改大小,可以通过在xaml中tittle后面 加上 ResizeMode = “NoResize”;
   修改窗体的初始显示位置,加:WindowStartupLocation = "CenterScree";

(2)让窗口初始占满屏幕:加:WindowState = "Maximized"

 

6、WPF中的ShowDialog方法与Show方法

 

InputWindow inputwin=new InputWindow();

bool? b=inputwin.ShowDialog();

 

——如果窗口是用ShowDialog方法打开的,那么新窗口中对DialogResult赋值会自动关闭新窗口,并且把DialogResult的值通过ShowDialog方法的返回值返回。

 

——ShowDialog()的返回值类型是bool?,而Show()的返回值类型是void,如在新窗口中没有对DialogResult属性进行赋值,直接关闭窗口,那么返回值为false。

 

——DialogResult是Window类定义的一个属性,类型为bool?

而在WinForm中的DialogResult是一个类,是MessageBox.Show()的返回值类型,而WPF中MessageBox.Show()的返回值类型为MessageBoxResult

 

 

 

7、打开对话框的类:OpenFileDialog
   private void button1_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            if (ofd.ShowDialog() == true)
            {
                MessageBox.Show("打开了");
            }
            else
            {
                MessageBox.Show("打开失败");
            }
        }

 

 

posted @ 2017-09-14 08:51  青年a  阅读(186)  评论(0编辑  收藏  举报