值不能为空。参数名称:从WPF按钮绑定数据触发

问题描述 投票:0回答:1

今天,当我尝试在按钮上绑定数据触发器时,我一直在努力解决这个问题,但我找不到问题。该按钮包含在绑定到数据集的列表视图中。

有我的按钮代码:

<Button
                    Grid.Row="1"
                    Grid.Column="0"
                    Click="BtnAddToCart_Click" 
                    MinWidth="230">
                        <Button.Style>

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

                                <Setter Property="Visibility" Value="Hidden"/>
                                <Setter Property="Margin" Value="7,5,0,0"/>

                                <Style.Triggers>
                                    <DataTrigger Binding="{Binding Path=OrderQty, Converter={StaticResource GreaterThanZero}}" Value="True">
                                        <Setter Property="Visibility" Value="Visible"/>
                                    </DataTrigger>

                                </Style.Triggers>
                            </Style>

                        </Button.Style>
                        <Button.Template>
                            <ControlTemplate>
                                <WrapPanel HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >
                                    <WrapPanel.Style>
                                        <Style TargetType="{x:Type WrapPanel}">

                                            <Setter Property="Background" Value="#ec3c42"/>
                                            <Setter Property="TextBlock.Foreground" Value="White"/>
                                            <Style.Triggers>
                                                <Trigger Property="IsMouseOver" Value="True">
                                                    <Setter Property="Background" Value="White"/>
                                                    <Setter Property="Cursor" Value="Hand"></Setter>
                                                    <Setter Property="TextBlock.Foreground"  Value="#ec3c42"></Setter>
                                                </Trigger>

                                            </Style.Triggers>

                                        </Style>
                                    </WrapPanel.Style>
                                    <WrapPanel.Resources>
                                        <Style TargetType="{x:Type TextBlock}">
                                            <Setter Property="Padding" Value="10,10" />
                                            <Setter Property="FontWeight" Value="Bold"/>
                                            <Setter Property="FontSize" Value="15"/>
                                        </Style>

                                    </WrapPanel.Resources>
                                    <TextBlock   VerticalAlignment="Center" HorizontalAlignment="Center" Text="Ajouter aux Commandes"></TextBlock>
                                    <fa:FontAwesome Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Right"  Icon="check">
                                        <fa:FontAwesome.Triggers>
                                            <DataTrigger Binding="{Binding Path=ShowAsChecked}" Value="true">
                                                <Setter Property="Visibility" Value="Visible"></Setter>
                                            </DataTrigger>
                                        </fa:FontAwesome.Triggers>

                                    </fa:FontAwesome>
                                </WrapPanel>
                            </ControlTemplate>
                        </Button.Template>
                    </Button>

我添加这段代码时似乎发生了问题:

<fa:FontAwesome.Triggers>
                                        <DataTrigger Binding="{Binding Path=ShowAsChecked}" Value="true">
                                            <Setter Property="Visibility" Value="Visible"></Setter>
                                        </DataTrigger>
                                    </fa:FontAwesome.Triggers>

当我删除触发器时,代码将按预期运行。

即使我将其绑定到在不同级别上工作的属性,它也不起作用。

我尝试将绑定更改为:

Binding="{Binding Path=OrderQty, Converter={StaticResource GreaterThanZero}}

而且它仍然给我错误。我尝试查找一些代码示例,但未发现与该问题有关的任何内容(由于该错误非常普遍,因此很难确定发生了什么。)

今天,当我尝试在按钮上绑定数据触发器时,我一直在努力解决这个问题,但我找不到问题。该按钮包含在列表视图中,该列表视图为...

wpf button datatrigger
1个回答
1
投票

尝试

© www.soinside.com 2019 - 2024. All rights reserved.