【问题标题】:How to create a TabControl Silverlight如何创建 TabControl Silverlight
【发布时间】:2011-01-20 21:39:52
【问题描述】:

看:

TabControl 定义:

<sdk:TabControl x:Name="tcWords">
                <sdk:TabControl.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Vertical">
                            <TextBlock Text="{Binding Letra}" />
                            <TextBlock Text="{Binding Palabra}" />
                            <TextBlock Text="{Binding Palabra}" />
                        </StackPanel>
                    </DataTemplate>
                </sdk:TabControl.ItemTemplate>
            </sdk:TabControl>

代码:

public class Termino
    {
        public string Letra { get; set; }
        public string Palabra { get; set; }
        public string Significado { get; set; }
    }

  List<Termino> arrPalabras = new List<Termino>();
            arrPalabras.Add(new Termino { Letra = "A", Palabra = "Ave", Significado = "Cualquier cosa" });
            arrPalabras.Add(new Termino { Letra = "A", Palabra = "Avion", Significado = "Cualquier cosa avion" });
            //lstItems.ItemsSource = arrPalabras;
            tcWords.ItemsSource = arrPalabras;

抛出异常!!!

无法转换类型的对象 '范式.Silverlight.DiccionarioDatos.Termino' 输入 System.Windows.Controls.TabItem'。

【问题讨论】:

  • 你什么时候得到这个异常?这是输出窗口中的Binding 异常还是调试器呕吐?

标签: silverlight templates tabcontrol


【解决方案1】:

您的问题有点不清楚,但您不能将您的类Termino 直接绑定到TabControlItemsSource,因为它不是从TabItem 派生的。

您可以尝试将您的声明更改为:

public class Termino : TabItem
{
    ....
}

认为这应该可行。

documentation for TabControl.ItemsSource 指向 ItemsControl 页面(TabControl 继承自该页面)并没有真正的帮助,因此示例是针对该页面而不是 TabControl

实际上,考虑一下,您应该创建一个TabItems 列表以设置为TabControlItemsSource,并将您的类绑定到TabItem

【讨论】:

  • 他没有绑定他的类,而是一个列表对象tcWords.ItemsSource = arrPalabras
  • @Voodoo - 但TabControl 想要TabItems 的列表而不是RandomClass 的列表。
  • 好的,但是在 TabControl 上设置 ItemsSource 将创建那些 TabItems。 (但也许不是??)-我不得不说我对这个感到困惑:)
  • @Voodoo - 错误消息指出它正在尝试将 Termino 转换为 TabItem 因此我的回答,但你的评论让我想了更多。
猜你喜欢
  • 2013-01-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-19
相关资源
最近更新 更多