首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按按钮更改页面点击

按按钮更改页面点击
EN

Stack Overflow用户
提问于 2020-04-29 00:22:37
回答 1查看 26关注 0票数 0

在我的xaml文件中

代码语言:javascript
复制
 <Button 
    Command="{Binding LoginCommand}"
 </Button>

<Frame
    Grid.Column="1"
    NavigationUIVisibility="Hidden"
     Content="{Binding CurrentPage, UpdateSourceTrigger=PropertyChanged}">
</Frame>

我的viewmodel类:

代码语言:javascript
复制
        private readonly LoginPageView _loginPage;  // Page i want to use
        private readonly StartPageView _startPage;
        private Page _currentPage;

        public StartWindowViewModel(LoginPageView loginPage, StartPageView startPage)
        {
            _loginPage = loginPage;
            _startPage = startPage;
            CurrentPage = _startPage;
            LoginCommand = new RelayCommand(OpenLoginPage, _ => true);
        }

        public event PropertyChangedEventHandler PropertyChanged;

        public Page CurrentPage                                  // I'm binding my frame to this property
        {
            get => _currentPage;
            set
            {
                _currentPage = value;
                OnPropertyChanged();
            }
        }

        public RelayCommand LoginCommand { get; set; }

        private void OpenLoginPage(object parameter)
        {
            CurrentPage = _loginPage;
        }

        protected void OnPropertyChanged([CallerMemberName] string name = null)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
        }

我想通过点击一个按钮来改变在框架中显示的页面。我不确定我是否应该为此使用框架,但看起来还可以。问题是我没有更新页面,

EN

回答 1

Stack Overflow用户

发布于 2020-04-29 00:48:54

我的解决方案似乎不是最好的:

代码语言:javascript
复制
<Frame
    Grid.Column="1"
    NavigationUIVisibility="Hidden"
    Source="{Binding PageName}">
</Frame>

public string PageName
{
    get => _pageName + ".xaml";
    set
    {
        _pageName = value;
        OnPropertyChanged();
    }
}

我实际上不喜欢这种解决方法,所以如果有人能给我一个更好的方法,我会很高兴的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61485038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档