WPF学习笔记(六)

  Inline对象的继承树如下:

 Object--DispatcherObject--DependencyObject--ContentElement--FrameworkContentElement--TextElement--Inline--Run Span---Italic  . Bold..HyperLink .Underline

  ContentElement需要借助UIElement元素来呈现出来。例:txb(TextBlock对象).Inlines.Add(new LineBreak());

 按钮的继承树为:ContentControl---ButtonBase--Button   其中它从ButtonBase类继承了ClickMode属性来控制Click事件产生的时间,可取一下三个值之一。Release  Hover(在上方即产生Click事件)  Press  。Padding与Margin分别控制内边距与外边距。

而其Command属性可以设置为ApplicationCommands  , ComponentCommands  ,MediaCommands  ,NavigateCommands

,EditingCommands 的静态属性。可以使用CommandBindings.Add(new CommandBinding(ApplicationCommands.Paste,PasteOnExecute,PasteCanExecute));

 void PasteOnExecute(object sender,ExecutedRoutedEventArgs e){}

void PasteCanExecute(object sender,CanExecutedRoutedEventArgs e){} 

 

ButtonBase---Button ,GridViewColumnHeader,RepeateButton,ToggleButton---CheckBox ,RadioButton

   可以使用绑定将依赖对象的属性与ToggleButton的IsChecked属性联系在一起 。例:btn(ToggleButton).SetBinding(ToggleButton.IsCheckedProperty,someproperty(例;TopMost) 或Bindind对象) 而DataContext决定someproperty的所属对象。

 

 Control-- TextBase---TextBox , RichTextBox

对于RichTextBox对象可以使用如下方式载入特殊格式的文件:

  FlowDocument flow=RichTextBox.Document;

TextRange range=new TextRange(flow.ContentStart,flow.ContentEnd);

range.Load(FileStream,DataFormats的静态属性);

range.Save(FileStream,DataFormats的静态属性);

 

 

 

 

 

你可能感兴趣的:(学习笔记)