【问题标题】:Windows Phone PivotWindows Phone 枢轴
【发布时间】:2023-04-04 09:36:02
【问题描述】:

我是 Windows 手机的新手。我正在尝试解决问题。我想在每个数据透视项上添加一个文本块和 2 个单选按钮。我设法添加了教科书,但不知道如何添加单选按钮。

var count = i + 1;
var textblok = new TextBlock { Text = o["questions"][i]["question"].ToString(), FontSize = 20,Width=450};
textblok.TextWrapping = TextWrapping.Wrap;
quizPivot.Items.Add(new PivotItem { Name="question"+count, Header = "Question " + count, Content = textblok,});

添加容器后

   for (var i = 0; i < Globals.quizcount; i++) 
                {
                    var count = i + 1;
                    var stackpanel = new StackPanel();
                    var textblok = new TextBlock { Text = o["questions"][i]["question"].ToString(), FontSize = 20,Width=450};
                    textblok.TextWrapping = TextWrapping.Wrap;
                    stackpanel.Children.Add(textblok);
                    var radio = new RadioButton { Name = "useransYes", Content = "Yes" };
                    stackpanel.Children.Add(radio);
                    var radio1 = new RadioButton { Name = "useransNo", Content = "No" };
                    stackpanel.Children.Add(radio1);

                    //, HorizontalAlignment = "Left", Margin = "66,317,0,0", VerticalAlignment = "Top
                    quizPivot.Items.Add(new PivotItem { Name = "question" + count, Header = "Question " + count, Content = stackpanel });
                    quesId.Text = o["questions"][i]["_id"].ToString();
                }

第二个我想知道如何获取所有的枢轴项目,我的意思是其中的内容。

谢谢

【问题讨论】:

    标签: c# windows-phone pivot


    【解决方案1】:

    您需要使用容器控件将多个 UI 控件添加到单个 PivotItem。例如使用StackPanel 作为容器:

    //create the container
    var stackpanel = new StackPanel();
    //create textblock
    var textblok = new TextBlock { Text = o["questions"][i]["question"].ToString(), FontSize = 20,Width=450};
    textblok.TextWrapping = TextWrapping.Wrap;
    //add to container
    stackpanel.Children.Add(textblok);
    //create radiobutton
    var radiobutton = new RadioButton{Content = "Radio Button content"}
    //add to container
    stackpanel.Children.Add(radiobutton);
    //add the container as content of pivot item
    quizPivot.Items.Add(new PivotItem { Name="question"+count, Header = "Question " + count, Content = stackpanel,});
    

    无论如何,还有另一种方法可以用更简洁的方法来实现这一点。避免使用数据绑定和模板化数据透视项从代码创建 UI 控件。

    【讨论】:

    • 谢谢@har07。它将单选按钮添加到透视项目,但会导致问题。我目前有 4 个支点项目,它只显示 1 个。
    • 您有 4 个枢轴项目,但只能看到一个枢轴项目?听起来很奇怪的问题(或者我误解了这个问题)。你怎么知道它实际上是 4?
    • 我正在向枢轴项目添加 4 个不同的问题。每个问题都在 1 个枢轴项目中。
    • 我已经更新了我的问题。基本上,我正在动态地创建一个包含单个问题的数据透视项目。
    • 嗨@nOmi,如果您针对最新的麻烦提出新问题,对每个人都会更好。发布您的最新代码并清楚地解释问题,以便我和 SO 周围的其他成员可以更好地理解它。理想情况下,一篇文章应包含不超过一个具体问题。这将使帖子更清晰,对未来的访问者可读。请记住,我们不仅在这里解决您的问题,而且还尝试建立知识库,希望对遇到类似问题的其他人有用。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多