Как установить WPF Grid.RowDefinitions через стиль - PullRequest
12 голосов
/ 10 декабря 2008

Я использую пару Grid s для форматирования нескольких GridViewColumn.CellTemplate s:

<ListView SharedSizeScope="true">
  <ListView.View>
    <GridView>
      <GridViewColumn>
        <GridViewColumn.CellTemplate>
          <DataTemplate>
            <Grid>
              <Grid.RowDefinitions>
                <RowDefinition SharedSizeGroup="foo" />
                <!-- ... -->

Я пытался извлечь RowDefinition s (которые одинаковы для всех столбцов) в Style:

<Style TargetType="{x:Type Grid}">
  <Setter Property="RowDefinitions">
    <Setter.Value>
      <RowDefinition SharedSizeGroup="foo" />
      <!-- ... -->

Но компилятор жалуется:

Ошибка: установщик свойства «RowDefinitions» не может быть установлен, потому что у него нет доступного набора сбруя.

Что очевидно, но не очень полезно.

Как я могу избежать многократного указания определений строк (см. Также Не повторяйте себя ), если не считать кодирование пользовательского вывода Grid?

1 Ответ

8 голосов
/ 10 декабря 2008

Сетка не поддерживает шаблоны управления (информация взята из здесь и, косвенно, из здесь ).

...