让我先睡一觉再说 2023-11-24 11:39 采纳率: 25%
浏览 6
已结题

跨页面修改值,数据更新了,但是页面没更新

使用了PropertyChanged.Fody插件.在文件里能看到text的值被修改了,但是Textbox框还是原来的值。怎么样才可以让它显示最新的值?
页面1:DataView.xaml

 <Grid>
        <StackPanel Background="White">
            <TextBlock Text="页面一"/>
            <TextBox Text="{Binding text}" Width="200" Height="50" Margin="20"/>
        </StackPanel>
    </Grid>

DataModelView.cs

 [AddINotifyPropertyChangedInterface]
    public class DataViewModel : ViewModelBase
    {
        public string text { get; set; }
        public DataViewModel()
        {
            text = File.ReadAllText("D:\\Text.txt");  
        } 
    }

页面二:UpdataView.xaml

 <Grid>
        <StackPanel Background="White">
            <TextBlock Text="页面二"/>
            <TextBox Text="{Binding value}" Width="200" Height="40" Margin="20"/>
            <Button x:Name="UpdateValue" Width="120" Height="40" Content="修改"/>
        </StackPanel>
    </Grid>

UpdataViewModel.cs

 [AddINotifyPropertyChangedInterface]
    public class UpdataViewModel :ViewModelBase
    {
        public string value { get; set; }
        public void UpdateValue()
        {
            DataViewModel dataViewModel = new DataViewModel();
            dataViewModel.text = value;
           File.WriteAllText("D:\\Text.txt", dataViewModel.text);
        }
    }
  • 写回答

2条回答 默认 最新

  • 让我先睡一觉再说 2023-12-01 09:14
    关注

    使用了事件聚合器

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月1日
  • 已采纳回答 12月1日
  • 创建了问题 11月24日

悬赏问题

  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析
  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
  • ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
  • ¥15 LLM accuracy检测
  • ¥15 pycharm添加远程解释器报错
  • ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口
  • ¥15 如何能达到用ping0.cc检测成这样?如图
  • ¥15 关于#DMA固件#的问题,请各位专家解答!