【发布时间】:2011-10-08 15:57:34
【问题描述】:
我希望有人能够帮助我解决这个问题。从昨天开始我就一直在这,但一无所获。
我有一个包含共享列表的数据网格,共享是一种类型。
每个共享都包含一个包含最近 30 天共享历史的列表。
我想在图表中显示所选项目的历史记录。
我不知道是否可以将图表直接绑定到数据网格,但我认为这对我不起作用,因为我的下一步是允许多项选择并将它们全部绘制在一个图表上。
我最近尝试的测试是:
字符串测试 = ((Share)ShareGrid.Items[ShareGrid.SelectedIndex]).Ticker;
给出错误 {“无法将“Share”类型的对象转换为“ProjectMain.Share”类型。”} ProjectMain 是我的命名空间
我也试过了
共享测试 = ShareGrid.SelectedItem 作为共享;
测试只是保持为空。
我已经围绕这些主题尝试了很多东西,但显然缺少一些东西,因此非常感谢任何帮助。
谢谢。
乔
更多细节: 我绑定投资组合列表框如下:
PortfolioListBox.ItemsSource = MainWindow.LoggedOnUser.Portfolio;
PortfolioListBox.SelectedIndex = 0;
我根据投资组合列表框绑定共享网格如下:
private void PortfolioListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
listPortfolio = (PortfolioListBox.SelectedItem as Portfolio);
ShareGrid.ItemsSource = listPortfolio.Share;
ShareGrid.SelectedIndex = 0;
}
投资组合列表框的 XML 是:
<ListBox Name ="PortfolioListBox"
DisplayMemberPath="name"
SelectionChanged="PortfolioListBox_SelectionChanged"
DataContext="{Binding Path=SelectedItem}"/>
为共享网格设置的xml如下:
<DataGrid AutoGenerateColumns="False" Height="Auto" HorizontalAlignment="Left"
Name="ShareGrid" VerticalAlignment="Top" SelectionMode="Extended"
SelectionUnit="FullRow" SelectionChanged="ShareGrid_SelectionChanged"
CanUserResizeRows="False" CanUserResizeColumns="False" FrozenColumnCount="1"
FontSize="16" IsReadOnly="True" DataContext="{Binding Path=SelectedItem}">
【问题讨论】:
-
消息
Unable to cast object of type 'Share' to type 'ProjectMain.Share表明您有两个名为Share的类,一个在ProjectMain命名空间中,一个不在任何命名空间中。这是正确的吗?
标签: wpf datagrid casting selecteditem