Как связать данные пользовательского контроля внутри списка WP8

У меня есть пользовательский контроль. Оно имеетTextBlock, Я хочу связать текст в нем


    
        
    

ВMyUserControls.xaml.cs

public partial class MyUserControl : UserControl
{
    public MyUserControl()
    {
        InitializeComponent();
    }

    public static readonly DependencyProperty TextProperty = 
        DependencyProperty.Register(
            "Text", 
            typeof(string), 
            typeof(MyUserControl), 
            new PropertyMetadata(null));

    public string Text
    {
        get { return (string)GetValue(TextProperty); }
        set
        {
            SetValue(TextProperty, value);
        }
    }
}

Когда я связываюсь сListBox это нене работает правильно


    
        
            
                
            
        
    

и MainPage.xaml

public partial class MainPage : PhoneApplicationPage
{
    ObservableCollection list = new ObservableCollection();

    public MainPage()
    {
        InitializeComponent();
        User user = new User("Thanh");
        list.Add(user);
        list.Add(new User("lfjlkgj"));
        DataContext = list;
    }
}

public class User
{
    public string Text { get; set; }

    public User(string name)
    {
        Text = name;
    }
}

Как правильно привязать пользовательские элементы управления? Спасибо!!!

Ответы на вопрос(1)

Решение Вопроса

Удалить эту строку из вашегоUserControl Xaml

DataContext="{Binding RelativeSource={RelativeSource Self}}"

Связывание в контролеs xaml будет правильно связываться с определенными свойствами зависимостей. Ты неНе нужно делать ничего лишнего.

Если у вас есть конфликт имен с другими источниками данных в вашем пользовательском элементе управления, вы можете добавитьElementName=UserControl к вашей привязке.

 Thanh Le08 июн. 2013 г., 18:04
Спасибо, я нашел способ связать данные только правильно ElementName = nameofUserControl

Ваш ответ на вопрос