Прочитать на английском

Поделиться через


ContentControl.Content Свойство

Определение

Получает или задает содержимое объекта ContentControl.

C#
[System.ComponentModel.Bindable(true)]
public object Content { get; set; }

Значение свойства

Объект с содержимым элемента управления. Значение по умолчанию — null.

Атрибуты

Примеры

В следующем примере показано, как создать четыре Button элемента управления с Content одним из следующих свойств:

  • Строка.

  • Объект DateTime.

  • Объект UIElement.

  • Элемент Panel управления , содержащий другие UIElement объекты.

Примечание

Хотя версия XAML примера может использовать <Button.Content> теги вокруг содержимого каждой кнопки, это необязательно. Дополнительные сведения см. в статье Общие сведения о XAML (WPF).

XAML
<!--Create a Button with a string as its content.-->
<Button>This is string content of a Button</Button>

<!--Create a Button with a DateTime object as its content.-->
<Button xmlns:sys="clr-namespace:System;assembly=mscorlib">
  <sys:DateTime>2004/3/4 13:6:55</sys:DateTime>
</Button>

<!--Create a Button with a single UIElement as its content.-->
<Button>
  <Rectangle Height="40" Width="40" Fill="Blue"/>
</Button>

<!--Create a Button with a panel that contains multiple objects 
as its content.-->
<Button>
  <StackPanel>
    <Ellipse Height="40" Width="40" Fill="Blue"/>
    <TextBlock TextAlignment="Center">Button</TextBlock>
  </StackPanel>
</Button>
C#
// Create a Button with a string as its content.
Button stringContent = new Button();
stringContent.Content = "This is string content of a Button";

// Create a Button with a DateTime object as its content.
Button objectContent = new Button();
DateTime dateTime1 = new DateTime(2004, 3, 4, 13, 6, 55);

objectContent.Content = dateTime1;

// Create a Button with a single UIElement as its content.
Button uiElementContent = new Button();

Rectangle rect1 = new Rectangle();
rect1.Width = 40;
rect1.Height = 40;
rect1.Fill = Brushes.Blue;
uiElementContent.Content = rect1;

// Create a Button with a panel that contains multiple objects 
// as its content.
Button panelContent = new Button();
StackPanel stackPanel1 = new StackPanel();
Ellipse ellipse1 = new Ellipse();
TextBlock textBlock1 = new TextBlock();

ellipse1.Width = 40;
ellipse1.Height = 40;
ellipse1.Fill = Brushes.Blue;

textBlock1.TextAlignment = TextAlignment.Center;
textBlock1.Text = "Button";

stackPanel1.Children.Add(ellipse1);
stackPanel1.Children.Add(textBlock1);

panelContent.Content = stackPanel1;

На следующем рисунке показаны четыре кнопки, созданные в предыдущем примере.

Четыре кнопки

Комментарии

Content Так как свойство имеет тип Object, нет никаких ограничений на то, что можно поместить в ContentControl. отображается Content с помощью ContentPresenter, который находится в элементе ControlTemplateContentControl. Каждый ContentControl тип в WPF имеет ContentPresenter в своем значении по умолчанию ControlTemplate. Дополнительные сведения о том, как отображается ContentPresenterContent, см. в разделе ContentPresenter.

Сведения о свойстве зависимостей

Поле идентификатора ContentProperty
Для свойств метаданных задано значение true Нет

Использование атрибута XAML

<object Content="content"/>  

Использование элемента свойства XAML

<object> content</object>  

Значения XAML

Content
Текст или один объект.

Применяется к

Продукт Версии
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9