Проблемы WPF с Windows Server 2003 - PullRequest
0 голосов
/ 19 января 2011

У меня странные проблемы с приложением WPF. Я развернул его под Windows Server 2003, и его поведение отличается от Win7.

Например, у меня есть такой вид XAML:

<GroupBox x:Name="groupbox1">
      <GroupBox.Style>
          <Style BasedOn="{StaticResource {x:Type GroupBox}}" TargetType="{x:Type GroupBox}">
             <Style.Triggers>
                <DataTrigger Binding="{Binding IsModel, UpdateSourceTrigger=PropertyChanged}" Value="True">
                                    <Setter Property="Visibility" Value="Collapsed" />
                </DataTrigger>
              </Style.Triggers>
          </Style>
      </GroupBox.Style>

На Win7 он работает как шарм, но на Windows Server 2003 он вообще не работает, и для моего группового окна всегда установлено свойство Visibility, равное Visible.

Некоторые элементы управления, такие как Expander, также отображаются по-разному.

Конфигурация WS 2003:

  • WS 2003 SP2
  • Microsoft .Net Framework 3.5 SP1

Если кто-нибудь может дать мне подсказку по этому вопросу, это будет очень полезно!

Спасибо.

1 Ответ

0 голосов
/ 24 января 2011

Я также работаю на Windows 2003 Server. У меня нет этой проблемы. Я попробовал немного другой код в Kaxaml. Попытайся. Если ваша проблема исчезла, это означает проблему с привязкой к свойству datacontext IsModel.

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <StackPanel>
      <CheckBox x:Name="Check" Content="Check it to hide GroupBox" />
        <GroupBox x:Name="groupbox1" Header="Group">
            <GroupBox.Style>
                <Style BasedOn="{StaticResource {x:Type GroupBox}}" TargetType="{x:Type GroupBox}">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding ElementName=Check, Path=IsChecked, UpdateSourceTrigger=PropertyChanged}" Value="True">
                            <Setter Property="Visibility" Value="Collapsed"/>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </GroupBox.Style>
            <TextBlock Text="Some GroupBox content" />
        </GroupBox>
    </StackPanel>
</Page>
...