對今天學習的關於sliverlight做出彙總
Sliverlight中的樣式分類:1,內置樣式 2,全局樣式
1, 內置樣式:所謂內置樣式就是直接在控件後加入屬性,這種方式一般會造成頁面混亂
2, 全局樣式:與asp.net中的css樣式類似例如:在app.xaml中定義
<Style x:Key="firstSty" TargetType="Button">
<Setter Property="FontSize" Value="15"></Setter>
<Setter Property="FontFamily" Value="微軟雅黑"></Setter>
<Setter Property="Foreground" Value="Red"></Setter>
<Setter Property="Background" Value="Silver"></Setter>
</Style>
則在xaml頁面中的button控件中可引用該樣式
<Setter Property="FontSize" Value="15"></Setter>
<Setter Property="FontFamily" Value="微軟雅黑"></Setter>
<Setter Property="Foreground" Value="Red"></Setter>
<Setter Property="Background" Value="Silver"></Setter>
</Style>
則在xaml頁面中的button控件中可引用該樣式
<Button Content="firsttext" Canvas.Left="30" Canvas.Top="120" Height="25"
Foreground="Black"
Background="Azure"
FontSize="14"
Style="{StaticResource firstSty}"
>
</Button>
當內置樣式與全局樣式衝突是會採取就近原則選則內置樣式
當內置樣式與全局樣式衝突是會採取就近原則選則內置樣式
3, RadioButton
頁面上有兩組RadioButton第一組爲:最喜歡的動物,第二組爲最喜歡的食物,當放在同一個頁面時,選中其中一個其他就爲空,這時候要把兩組RadioButton分開,分開的方法:
A,把兩組RadioButton放在不同的Grid中 B,改變兩組RadioButton的GroupName
4, sliverlight中實現Session
sliverlight運行在客戶端,所以只能模擬session,利用靜態類和靜態方法來模擬session的作用。
private static Dictionary<string, object> session = new Dictionary<string, object>();
public static Dictionary<string, object> Session
{
get { return SessionManager.session; }
set { SessionManager.session = value; }
}
5, sliverlight中的控件分類
Silverlight中所有的控件類都是FrameworkElement(UIElement 提供 Silverlight 佈局特徵的基本要素,FrameworkElement 添加了更多的佈局功能)的子類,根據控件的派生類關係不同,可以把他們分爲如下幾類:
a、面板控件:這類控件由Panel類派生,如Canvas、Grid、StackPanel、InkPresenter控件等
b、內容控件:這類控件由ContentControl類派生,提供了Content屬性,用於定製控件的內容,如Button、RadioButton、HyperlinkButton、RepeatButton、CheckBox、ScrollViewer控件等
c、列表控件:這類控件由ItemsControl類派生,經常用於顯示數據的集合,如ComboBox、ListBox、TabControl控件等
d、普通控件:他們直接派生於Control類,自定義控件時也經常會從Control類派生,如TextBox、PasswordTextBox、Canlendar、DataGrid、DataPicker、ProgressBar、ScrollBar、Slider控件等、
e、其他控件:這類控件並不由Control類派生,而是直接派生於FrameworkElement類,如TextBlock、Border、Image、MediaElement、Popup控件等