Свойство пользовательского элемента управления WP7 - PullRequest
0 голосов
/ 26 октября 2010

Мне нужен пользовательский элемент управления под названием Сегментированная панель, который содержит 3 кнопки, для которых я хочу изменить их имена (Title1 / 2/3) на экране XAML.

MainPage XAML:

<local:SegmentedControl HorizontalAlignment="Left" Margin="43,62,0,0" x:Name="segmentedControl1" VerticalAlignment="Top" Title1="ENTER BUTTON NAME HERE" Title2="blah.." Title3="Last Button" Loaded="segmentedControl1_Loaded" />

SegmentedControl XAML.CS:

public static readonly DependencyProperty Title1Property
        = DependencyProperty.RegisterAttached("Title1", typeof(String), typeof(StackPanel),
        new PropertyMetadata(""));

    public static void SetTitle1(UIElement element, String value) {
        element.SetValue(Title1Property, value);
    }
    public static string GetTitle1(UIElement element) {
        return (string)element.GetValue(Title1Property);
    }

    public string Title1 {
        get { return GetValue(Title1Property).ToString(); }
        set { SetValue(Title1Property, value); }
    }

В смеси выражений я открываю Сегментированную панель, выбираю button1, в Содержании я пытался выбрать Контекст данных и Значение элемента, затем прокрутите вниз, чтобы выбрать «Title1», но когда я его скомпилирую, содержимое кнопки никогда не изменится.

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 27 октября 2010

, как предлагает Джон Гарднер, вы должны написать ... typeof (SegmentedControl) в своей реализации свойства зависимостей, а затем нужно привязать свойство к соответствующему элементу пользовательского интерфейса!

Например:

<local:SegmentedControl HorizontalAlignment="Left" Margin="43,62,0,0" x:Name="segmentedControl1" VerticalAlignment="Top" Title1="{Binding Title1}" ... Loaded="segmentedControl1_Loaded" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...