第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

當(dāng)位于非主 TabItem 內(nèi)時(shí),MVVM 綁定在 DataGrid 列標(biāo)題中不起作用

當(dāng)位于非主 TabItem 內(nèi)時(shí),MVVM 綁定在 DataGrid 列標(biāo)題中不起作用

C#
小唯快跑啊 2023-09-09 17:00:43
我在輔助 TabItem 中有一個(gè) DataGrid,我想將視圖模型中的一些數(shù)據(jù)綁定到標(biāo)題。我能夠?qū)?shù)據(jù)綁定到主 TabItem 中的 DataGrid 標(biāo)題,但相同的代碼不適用于輔助 TabItem。我遵循了以下問題的答案,但它仍然不起作用,我不確定出了什么問題。我不太確定我的數(shù)據(jù)上下文是否不正確或者我的綁定設(shè)置是否正確。在非主 TabItem 內(nèi)時(shí),綁定在 DataGrid 列標(biāo)題中不起作用這是我的代碼:XAML<Window xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"          x:Class="TestWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"        mc:Ignorable="d"        Title="Test Window" Height="645" Width="900">    <StackPanel Orientation="Vertical">        <TabControl>            <TabItem Name="Primary_Tab" Header="Primary Tab">                <!--Mock Data Grid-->            </TabItem>            <TabItem Name="Secondary_Tab" Header="Secondary Tab">                <DataGrid Height="500" ItemsSource="{Binding GridDetails}" HorizontalAlignment="Left" VerticalAlignment="Top" AutoGenerateColumns="False" CanUserAddRows="False">                    <DataGrid.Resources>                        <local:BindingProxy x:Key="proxy" Data="{Binding}" />                    </DataGrid.Resources>                    <DataGrid.Columns>                        <DataGridTextColumn x:Name="Name" Header="Name" Binding="{Binding Path='Name', Mode=OneTime}" IsReadOnly="True" Width="200" />                        <DataGridTextColumn x:Name="ID" Header="ID" Binding="{Binding Path='ID', Mode=OneTime}" IsReadOnly="True" Width="100">                            <DataGridTextColumn.ElementStyle>                                <Style TargetType="{x:Type TextBlock}">                                    <Setter Property="HorizontalAlignment" Value="Center" />                                </Style>                            </DataGridTextColumn.ElementStyle>
查看完整描述

1 回答

?
呼啦一陣風(fēng)

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超6個(gè)贊

我終于設(shè)法解決了綁定問題??雌饋砦矣幸欢巡槐匾慕壎ㄉ舷挛拇a,它們干擾了代理綁定。對(duì)于將來遇到同樣問題的任何人來說,這對(duì)我有用。請(qǐng)注意,我根本不必更改視圖模型或 BindingProxy 類。只需要在 XAML 部分做一些工作。


<Window xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"  

        x:Class="TestWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

        mxlns:local="clr-namespace:MyNamespace"

        mc:Ignorable="d"

        Title="Test Window" Height="645" Width="900">

    <StackPanel Orientation="Vertical">

        <TabControl>

            <TabItem Name="Primary_Tab" Header="Primary Tab">

                <!--Mock Data Grid-->

            </TabItem>

            <TabItem Name="Secondary_Tab" Header="Secondary Tab">

                <DataGrid Height="500" ItemsSource="{Binding GridDetails}" HorizontalAlignment="Left" VerticalAlignment="Top" AutoGenerateColumns="False" CanUserAddRows="False">

                    <DataGrid.Resources>

                        <local:BindingProxy x:Key="proxy" Data="{Binding}" />

                    </DataGrid.Resources>

                    <DataGrid.Columns>

                        <DataGridTextColumn x:Name="Name" Header="Name" Binding="{Binding Path='Name', Mode=OneTime}" IsReadOnly="True" Width="200" />

                        <DataGridTextColumn x:Name="ID" Header="ID" Binding="{Binding Path='ID', Mode=OneTime}" IsReadOnly="True" Width="100">

                            <DataGridTextColumn.ElementStyle>

                                <Style TargetType="{x:Type TextBlock}">

                                    <Setter Property="HorizontalAlignment" Value="Center" />

                                </Style>

                            </DataGridTextColumn.ElementStyle>

                        </DataGridTextColumn>

                        <DataGridTextColumn x:Name="NumClaims" Binding="{Binding Path='NumClaims', Mode=OneTime}" IsReadOnly="True" Width="100">

                            <DataGridTextColumn.Header>

                                <StackPanel>

                                    <TextBlock Text="Claims"/>

                                    <TextBlock Text="{Binding Path=Data.TotalClaims, UpdateSourceTrigger=PropertyChanged, Source={StaticResource proxy}}" />

                                </StackPanel>

                            </DataGridTextColumn.Header>

                            <DataGridTextColumn.ElementStyle>

                                <Style TargetType="{x:Type TextBlock}">

                                    <Setter Property="HorizontalAlignment" Value="Center" />

                                </Style>

                            </DataGridTextColumn.ElementStyle>

                        </DataGridTextColumn>

                        <DataGridTextColumn x:Name="NewClaims" Binding="{Binding Path='NumNewClaims', Mode=OneTime}" IsReadOnly="True" Width="80">

                            <DataGridTextColumn.Header>

                                <StackPanel>

                                    <TextBlock Text="New Claims"/>

                                    <TextBlock Text="{Binding Path=Data.TotalNewClaims, UpdateSourceTrigger=PropertyChanged, Source={StaticResource proxy}}" />

                                </StackPanel>

                            </DataGridTextColumn.Header>

                            <DataGridTextColumn.CellStyle>

                                <Style TargetType="{x:Type DataGridCell}">

                                    <Setter Property="Background" Value="{Binding NumNewClaims}"/>

                                </Style>

                            </DataGridTextColumn.CellStyle>

                            <DataGridTextColumn.ElementStyle>

                                <Style TargetType="{x:Type TextBlock}">

                                    <Setter Property="HorizontalAlignment" Value="Center" />

                                </Style>

                            </DataGridTextColumn.ElementStyle>

                        </DataGridTextColumn>

                    </DataGrid.Columns>

                </DataGrid>

            </TabItem>

        </TabControl>

    </StackPanel>

</Window>



查看完整回答
反對(duì) 回復(fù) 2023-09-09
  • 1 回答
  • 0 關(guān)注
  • 129 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)