Is there a situation where ContentPresenter
is the content of UIElement
? Given that the field has been declared as an object instead of UIElement
, it seems that it will happen, however, I can not think of any situation where it is, or even That it is also valid.
ContentPresenter presenter = GetTemplateChild (PART_Presenter) as ContentPresenter; UIElement myElement = (UIElement) presenter. Material; MyElement.SomeUIMethod (); // Possible invalid operation exceptions?
I do this all the time - and complete MVVM method non- UIElement
Content, here is an example:
Create a class that is not derived from the UIElement
, I will call MyViewModelClass in this example.
Create a window and add this code
public partial squares window 1: window {public window 1 () {DataContext = new MyViewModelClass (); InitializeComponent (); }}
and add some content controls to XAML:
& lt; Button content = "{binding}" />
Now you have a ContentPresenter
(inside the button control template) with MyViewModelClass as the content.
Another (probably more common) example, for example, each ListBoxItem
has a ContentPresenter
which is in the list, whichever is it < Set the code> ItemControl ItemSource
.
No comments:
Post a Comment