You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现按钮按数据初始化文本并点击切换Show/Hide Comment?

解决方案

要实现按钮文本在「Show Comment」和「Hide Comment」之间切换,只需修改OnButtonClicked方法,根据控件的可见状态动态设置按钮文本即可:

修改后的代码

private void GenerateCommentContent()
{
     var button = new Button();
     button.Text = question.Comment == null ? $"+ {Translator.Buttons_AddComment}" : $"{Translator.Buttons_ShowComment}";
     button.WidthRequest = 100;
     button.Clicked += (sender, e) => OnButtonClicked(commentlabel, frame, button);

     // 其他生成Label、Frame、Editor的逻辑...
}

private void OnButtonClicked(Label label, Frame frame, Button button)
{
    // 切换Label和Frame的可见性
    label.IsVisible = !label.IsVisible;
    frame.IsVisible = !frame.IsVisible;

    // 根据当前可见状态设置按钮文本
    button.Text = label.IsVisible ? $"{Translator.Buttons_HideComment}" : $"{Translator.Buttons_ShowComment}";
}

逻辑说明

  1. 初始状态:当question.Comment存在数据时,按钮文本为Show Comment,此时Label和Frame处于隐藏状态(IsVisible = false)。
  2. 第一次点击按钮:切换Label和Frame为可见(IsVisible = true),同时按钮文本改为Hide Comment。
  3. 再次点击按钮:切换Label和Frame为隐藏(IsVisible = false),按钮文本改回Show Comment。

这种方式通过控件的可见状态判断按钮文本,比直接判断按钮文本内容更可靠,能避免翻译文本变化导致的判断失效问题。

内容的提问来源于stack exchange,提问作者Funky Sloth

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 11:01:24