【发布时间】:2019-09-03 21:11:26
【问题描述】:
我正在尝试创建一个小程序,如果单击增加按钮,数字将加 1,反之亦然。
我设法将 _number 值绑定到 TextBlock(最初设置为 0),但是当我单击按钮时,似乎没有添加或减去该值。或者,如果值更改但未在窗口上更新。
.xaml
// MainWindow.xaml
<Window x:Class="Home_Test.MainWindow"
...
Title="MainWindow" Height="450" Width="800">
<Grid Name="MainGrid">
<Button ...
Content="Add"
Click="increase"/>
<Button ...
Content="Subtract"
Click="decrease"/>
<TextBlock
Name="txtbox"
HorizontalAlignment="Center"
Height="23"
TextWrapping="Wrap"
Text="{Binding Path=Number}"
Width="120"
Margin="0,100,0,0" />
</Grid>
.xaml.cs
using System;
using System.Windows;
using System.ComponentModel;
using System.Runtime.CompilerServices;
...
namespace Home_Test
{
public partial class MainWindow : INotifyPropertyChanged
{
public MainWindow()
{
InitializeComponent();
DataContext = this;
}
private int _number = 0;
public int Number
{
get { return _number; }
set
{
if (_number != value)
{
_number = value;
}
}
}
public void increase(object sender, RoutedEventArgs e)
{
_number += 1;
}
public void decrease(object sender, RoutedEventArgs e)
{
_number -= 1;
}
public event PropertyChangedEventHandler PropertyChanged;
}
}
总的来说,我希望我的程序在单击按钮时会加 1 或减 1。 我在这里做错了吗?
【问题讨论】:
标签: c# wpf xaml desktop-application