【问题标题】:increase or decrease binding value in xaml增加或减少 xaml 中的绑定值
【发布时间】:2016-12-18 19:07:09
【问题描述】:

我在我的 XAML 中有这个控件,我只是想在按下按钮时增加或减少数量,关于如何直接从 click_event 访问我的可观察集合并编辑值的任何聪明的想法? 我试图到达父母的 itemsource 但我不知道如何使它工作......

<Grid Grid.Column="2">
                                                <Grid.ColumnDefinitions>
                                                    <ColumnDefinition Width="1*" />
                                                    <ColumnDefinition Width="1*" />
                                                    <ColumnDefinition Width="1*" />
                                                </Grid.ColumnDefinitions>
                                                <Button VerticalAlignment="Center"
                                                        HorizontalAlignment="Center"
                                                        Content="-"
                                                        Click="Button_Click" />
                                                <TextBlock Grid.Column="1"
                                                           VerticalAlignment="Center"
                                                           HorizontalAlignment="Center"
                                                           Text="{x:Bind quantity}" />
                                                <Button Grid.Column="2"
                                                        VerticalAlignment="Center"
                                                        HorizontalAlignment="Center"
                                                        Content="+" />
                                            </Grid>

在这里你可以看到源码的结构:

 menu.Add(new MainCategories() { CategoryName = "tittle2", Visible = false });
            menu[1].SubMenuItems.Add(new Dishes() { dishName = "dishab", dishPrice = 13, quantity = 0 });

【问题讨论】:

  • 我将创建我的 UserControl - 它是视图和视图模型,然后 ObeservableCollection 将包含多个视图模型项 - 这些按钮操作将在列表包含的任何控件中实现

标签: c# xaml binding uwp


【解决方案1】:

在不进行太多更改的情况下快速而肮脏的方法是:

按钮点击事件的发送者应该是Button类型,可以强制转换。

此按钮(发送者)的 DataContext 属性应该能够转换为您绑定到的任何类型,以便在文本块中获取您的数量。然后你可以增加它。

不过,我建议您研究 MVVM 和 Commanding。

【讨论】:

  • 非常感谢,这按预期工作,这肯定是一种快速的方法,但正如你所说的那样脏......它是脏是因为代码更难理解还是它对性能也不利?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-06
  • 1970-01-01
  • 2013-04-08
  • 2017-06-03
  • 1970-01-01
  • 2012-05-30
  • 2021-11-21
相关资源
最近更新 更多