1

我想创建一个视图,该视图具有一组选项卡(每个,基本上是一个ContentControl),每个选项卡都有各种设置。然后我想要一个按钮来更新所有数据绑定,而不是立即更新或让更新按钮与控件本身相关联

所以,我的控件是 MEF 导出为 aResourceDictionary并且类似于下面

<ResourceDictionary ...>
<DataTemplate DataType="{x:Type vm:AdminViewModel}">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <TabControl Grid.Row="0">
            <TabItem Header="Tests">
                <ContentControl Content="{Binding ResultStorage}"/>
            </TabItem>
        </TabControl>
        <StackPanel Grid.Row="1" Orientation="Horizontal">
            <Button Content="Update"/>
            <Button Content="Cancel"/>
        </StackPanel>
    </Grid>
</DataTemplate>
</ResourceDictionary>

TestStorage 会是这样的:

<ResourceDictionary ...>
<DataTemplate DataType="{x:Type data:XmlResultStorage}">
    <StackPanel>
        <TextBlock Text="Result File Path:"/>
        <TextBox Text="{Binding Path=ResultPath, Source={x:Static properties:DataStorage.Default}, UpdateSourceTrigger=Explicit}"/>
        <TextBlock Text="Result File Location:"/>
        <TextBox Text="{Binding Path=ResultFilename, Source={x:Static properties:DataStorage.Default}, UpdateSourceTrigger=Explicit}"/>
    </StackPanel>
</DataTemplate>

我想要做的是当按下更新按钮以某种方式调用更新(UpdateSource?)时,ContentControl但我不知道该怎么做。

在一个理想的世界里,我不会有代码隐藏并通过 MVVM 或其他东西来完成这一切,但如果这不可能,代码隐藏就可以了。

所以我有两个问题,如何通过 a 手动更新数据绑定,ResourceDictionary然后如何使其通过其子级级联ContentControls

4

0 回答 0