【问题标题】:button action in listbox in windows phonewindows phone 列表框中的按钮操作
【发布时间】:2013-11-29 18:53:43
【问题描述】:

我有一个列表框,其中每行列表框包含 2 个文本块和 2 个按钮。 每当我单击任何列表框行的第一个按钮时,它将显示列表框中该行的第一个文本块的文本,并且每当我单击列表框任何行的第二个按钮时,它都会说出该行的第一个文本块的文本。 考虑下面的列表框图片。如果我单击第二行的星形按钮,它将显示“sedulous”,如果我单击最后一行的扬声器按钮,它将显示“underbid”。 我怎样才能做到这一点??? 我的列表如下所示:

我在 xaml 中的列表框设计如下所示:

<ListBox x:Name="listBox1" FontSize="26" Width="400" Height="Auto" HorizontalContentAlignment="Stretch" SelectionChanged="listBox1_SelectionChanged">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Vertical">
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Text="{Binding Path=Eng}" Width="150"/>
                            <Button Content="" Height="Auto" Name="b1" Width="100" BorderThickness="0" Background="DarkGreen" />
                              <Button Content="" Height="Auto" Name="b2" Width="100" BorderThickness="0" Background="DarkGreen" />  
                        </StackPanel>
                        <TextBlock Text="{Binding Path=Bng}" Width="150"/>
                        <Rectangle Height="2" Width="400" Fill="YellowGreen" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

我列出的代码是:

List<dataLists> mylist = new List<dataLists>();

        string word = textBox1.Text;

        if (db != null)
        {

            var contacts = (from m in db.Dics where m.English.StartsWith(word) select new { m.English, m.Bangla }).Take(5);


            string s1, s2;

            try
            {

                foreach (var a in contacts)
                {
                    s1 = a.English;
                    s2 = a.Bangla;

                    mylist.Add(new dataLists() { Eng = s1, Bng = s2 });
                }

            }
            catch (Exception ex) { MessageBox.Show(ex.ToString()); }

            listBox1.ItemsSource = mylist;

谁能解决这个问题?

【问题讨论】:

    标签: windows-phone-7 windows-phone-8 listbox windows-phone


    【解决方案1】:

    您可以在按钮的 onclick 事件中轻松管理它,将标签设置为文本块的文本和

    在点击事件中

    textbox.text = (发送者作为按钮).Tag.Tostring()

    【讨论】:

    • 查看我的 xaml 文件。我的列表框的每一行都包含 2 个文本块和 3 个按钮。因此,每当我单击任何列表框行的第二个按钮时,它都会显示该行的第一个文本块的文本。 @techlorr
    • @DarkenShooter 那么你需要什么?
    • 我更新了我的问题。请阅读我的例子,我想你会很清楚,我想要什么。如果你可以帮助我。@techloverr
    • @DarkenShooter 所以请遵循我的解决方案
    • @DarkenShooter 将按钮的标签绑定到 xaml 中 textblock 的文本。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多