Очень простой вопрос, связанный с Silverlight - PullRequest
2 голосов
/ 23 марта 2010

У меня есть пользовательский UserControl, который называется (например) MyPanel, и я хочу использовать его в другом файле XAML. Я хотел бы установить свойство MyPanel, например «Заголовок» в файле XAML, в который помещается MyPanel, следующим образом:

<UserControl x:Name="ContainerControl">
    <local:MyPanel Title="Whatever I Want" />
</UserControl>

Я бы хотел, чтобы свойство «Название» MyPanel затем заполняло текстовый блок в MyPanel. Как настроить код и / или XAML в MyPanel для поддержки такого свойства?

Я даже не уверен, что это считается обязательным, поэтому извините за мое невежество, если это неправильно.

1 Ответ

2 голосов
/ 23 марта 2010

Самое простое решение, которое я могу придумать: -

MyPanel xaml: -

<UserControl x:Class="SilverlightApplication1.MyPanel" ...>
  <Grid x:Name="LayoutRoot">
    <TextBlock x:Name="txtTitle" />
    <!-- other stuff here -->
  </Grid>
</UserControl>

MyPanel.cs: -

public partial class MyPanel : UserControl
{
  // constructor stuff here.

  public string Title
  {
      get { return txtTitle.Text; }
      set { txtTitle.Text = value; }
  } 
}

Существуют и другие "умные" решения, но этого достаточно для этого требования

...