2014-10-02 4 views
1

Я знаю, что это плохая практика, но я создал сетку в коде и хотел бы привязать эту сетку к моему представлению.Можно ли связать контент в Xaml с сеткой в ​​коде

До сих пор я:

Вид:

  <ContentPresenter Content="{Binding CustomerTagsView}"/> 

код

private Grid _customerTagsView; 
    public Grid CustomerTagsView 
    { 
     get { return _customerTagsView; } 
     set 
     { 
      _customerTagsView = value; 
      OnPropertyChanged(new System.ComponentModel.PropertyChangedEventArgs("CustomerTagsView")); 
     } 
    } 

Но метод Get никогда не вступал. Что я сделал не так?

ответ

0

Мой плохой .. Метод работает его только в моем случае связывание было неправильно ...

System.Windows.Data Error: 40 : BindingExpression path error: 'CustomerTagsView' property not found on 'object' ''' (HashCode=16802356)'. BindingExpression:Path=CustomerTagsView; DataItem='' (HashCode=16802356); target element is 'ContentPresenter' (Name=''); target property is 'Content' (type 'Object')

Важный урок. Всегда проверяйте свое выходное окно перед запуском до StackOverflow

<UserControl.Resources> 
    <DataTemplate x:Key="container"> 
     <Border> 
      <ContentPresenter Content="{Binding}" /> 
     </Border> 
    </DataTemplate> 
</UserControl.Resources> 
<ContentControl Content="{Binding newThing.CustomerTagsView}" ContentTemplate="{StaticResource container}"/>