繁体   English   中英

从堆栈面板获取文本框名称 wpf

[英]Get textbox name from stackpanel wpf

我的 wpf 应用程序中有一个带有动态创建的文本框和按钮的堆栈面板。 这工作正常。 稍后在应用程序中我必须使用文本框的名称和值。 我怎么做。 我有这段代码:首先创建名为 panelBet 的 ia stackpanel 文本框。

其次是使用名称和值的 switch-case。 “控制”下的红线。

第一次创作:

int f = 1;
foreach (TextBox txt2 in txtBet)
{
    string name = "Bet" + f.ToString(); ;

    txt2.Name = name;
    txt2.Text = name.ToString();
    txt2.Width = 100;
    txt2.Height = 40;
    txt2.Background = Brushes.Lavender;
    txt2.Margin = new Thickness(3);
    txt2.HorizontalAlignment = HorizontalAlignment.Left;
    txt2.VerticalAlignment = VerticalAlignment.Top;
    txt2.Visibility = Visibility.Visible;

    panelBet.Children.Add(txt2);

    f++;
}

第二个开关盒:

private void cboRunder_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    var cboRunder = sender as ComboBox;

    string strRunder = cboRunder.SelectedValue.ToString(); // blinds, preflop osv.

    switch (strRunder)
    {
        case "Blinds":
            string s = ((TextBox)panelBet.Controls["txtBet"]).Text;                 
    }
}

这应该让你在 panelBet 中得到一个名为“ panelBet ”的TextBox的引用,假设有一个:

TextBox txtBet = panelBet.Children.OfType<TextBox>()
    .FirstOrDefault(x => x.Name == "txtBet");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM