日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

【转】WPF从我炫系列3---内容控件的用法

發布時間:2023/12/10 asp.net 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】WPF从我炫系列3---内容控件的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天我來給大家講解WPF中內容控件的用法,在WPF中的內容控件,通俗的講,是指具有Content屬性的控件,content屬性里面可以嵌套放置任意其他類型的控件,但是Content只能接受單個元素,可以通過布局控件來組合放置多個元素。它繼承System.Windows.Controls.ContentControl這個類。

WPF中的內容控件大致可以分為4類:

1.???????直接派生自ContentControl控件

WPF控件庫中,大多數控件都是這種類型的控件.,例如BUTTON,按鈕,列表框控件,LABEL控件。關于這中類型的控件,在后面我們會單獨挑出一節課來講,在這一章我們就不在仔細闡釋。

2.派生自HeaderContentControl的控件

這中類型的控件一般都包括一個標頭和一個內容項。在WPF中這種類型的控件般包括Expander,GroupBox,TabItem這三種類型的控件.

下面我們來一一演示這三種控件的用法

Expander帶標題的可折疊控件.

這種控件類似于WINFOWS XP中,打開我的電腦,窗體左側中的可折疊面板控件。

效果圖

?

Expander控件的IsExpanded的屬性可以設置或獲取控件的當前折疊狀態。在圖中的expander1

控件的IsExpanded="True",當窗體初次加載時,就會顯示其內容。IsExpanded屬性默認為false

ExpandDirection屬性可以設置控件的展開方向,可以設置上下左右展開

圖中名稱為expander2的控件的展開方向設置為想右展開

?

代碼

<Window?x:Class="WpfContentControl.MainWindow"

????????xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

????????xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

????????Title="MainWindow"?Height="350"?Width="525">

????<Grid>

????????<Grid.RowDefinitions>

????????????<RowDefinition></RowDefinition>

????????????<RowDefinition></RowDefinition>

????????</Grid.RowDefinitions>

????????????<Expander?Header="可折疊面板"??Name="expander1"?IsExpanded="True" >

????????????<StackPanel>

????????????????<RadioButton></RadioButton>

????????????????<RadioButton></RadioButton>

????????????????<RadioButton></RadioButton>

????????????????<RadioButton></RadioButton>

???????????????

????????????</StackPanel>

????????</Expander>

????????<Expander??Name="expander2"?Grid.Row="1"?ExpandDirection="Right">

????????????<Expander.Header>

????????????????<Image?Source="1.gif"??Width="50"?Height="50"></Image>

????????????</Expander.Header>

????????????<StackPanel>

????????????????<CheckBox></CheckBox>

????????????????<CheckBox></CheckBox>

????????????????<CheckBox>西</CheckBox>

????????????????<CheckBox></CheckBox>

????????????</StackPanel>

????????</Expander>

????</Grid>

</Window>

注意:Expander控件提供了一些事件供用戶進行操作。

Collapsed事件:在控件的內容被折疊收起前,引發該事件。

Expanded事件:在控件的內容被展開顯示前,引發該事件。

Expander提供了很多事件,關于其他事件的使用,用戶可以在屬性窗口中找到相應的事件,可以一一試驗.

?

GroupBox組合框控件

WPF中的??GroupBox控件類似于WINFORM中的GroupBox控件,用于組合一些相關的控件,它也是包含一個標頭和一個內容,同時可以自定義標頭

效果圖

?

代碼

<Window?x:Class="WpfContentControl.groupctrl"

????????xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

????????xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

????????Title="groupctrl"?Height="385"?Width="559">

????<Grid>

????????<Grid.RowDefinitions>

????????????<RowDefinition></RowDefinition>

????????????<RowDefinition></RowDefinition>

????????</Grid.RowDefinitions>

????????<GroupBox??Name="groupBox1"?BorderBrush="Red">

????????????<GroupBox.Header>

????????????????<StackPanel?Orientation="Horizontal">

????????????????????<Image?Source="1.gif"></Image>

????????????????????<TextBlock>GroupBox使</TextBlock>

????????????????</StackPanel>

????????????</GroupBox.Header>

????????????<StackPanel>

????????????????<CheckBox></CheckBox>

????????????????<CheckBox></CheckBox>

????????????????<CheckBox></CheckBox>

????????????????<CheckBox></CheckBox>

????????????</StackPanel>

????????</GroupBox>

????</Grid>

</Window>

?

TabControl標簽控件

TabControlwinform中的TabControl控件類似,它也可以自定義標頭,可以定義多個標簽項,通過設置標簽項的IsSelected屬性可以指定在窗體首次打開時,默認顯示哪個標簽頁

效果圖

?

?

代碼

<Window?x:Class="WpfContentControl.TabCtro"

????????xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

????????xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

????????Title="TabCtro"?Height="328"?Width="366">

????<Grid>

????????<TabControl?Name="tabControl1">

????????????<TabItem?Name="tabItem1">

????????????????<TabItem.Header>

????????????????????<Button></Button>

????????????????</TabItem.Header>

????????????????<StackPanel>

????????????????????<TextBlock>TABCONTROL使</TextBlock>

????????????????</StackPanel>

????????????</TabItem>

????????????<TabItem?Name="tabitem2"?IsSelected="True">

????????????????<TabItem.Header>

????????????????????<StackPanel?Orientation="Horizontal">

????????????????????????<Image?Source="1.gif"?Width="20"></Image>

????????????????????????<TextBlock>2</TextBlock>

????????????????????</StackPanel>

????????????????</TabItem.Header>

????????????????<StackPanel>

????????????????????<CheckBox></CheckBox>

????????????????????<CheckBox></CheckBox>

????????????????</StackPanel>

????????????</TabItem>

????????</TabControl>

????</Grid>

</Window>

?

3派生自ItemsControl的控件

這種類型的控件如LISTBOX,關于這種類型控件的講解,我會在后面專門抽出節課來進行講解

?

4.?派生自HeaderedItemsControl的控件

這種類型的控件包括一個標頭和一個內容集合,如MenuItem菜單項控件,TOOLBAR工具條控件

TreeViewIitem控件,等,這一節的控件我也會挑出一節專門課程來進行講解。

這一節主要給大家講解了一下控件的大致分類。沒有細講各個控件的用法,在下一節會為大家講解各個控件的仔細用法。

?

demo下載:http://download.csdn.net/source/2487167

總結

以上是生活随笔為你收集整理的【转】WPF从我炫系列3---内容控件的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。