teardrop
جمعه 28 بهمن 1390, 21:55 عصر
به نام خدا
سلام
مشکلی در biding داشتم که به شرح زیر است:
در قسمت <Window.Resources> یک TreeViewItem به عنوان یک نمونه از آیتم سفارشی شده قرار داده ام. و در 3 جا از biding استفاده کردم.ولی در code behind وقتی آیتم سورس رو مقدار دهی میکنم، biding به صورت صحیح انجام نمی گیرد.
<Window.Resources>
<!--Packet-->
<TreeViewItem x:Key="treePacket">
<StackPanel>
<TextBlock Text="{Binding IDP}" />
<StackPanel Orientation="Horizontal">
<Image Source="/treeviewDir;component/Images/package.png" />
<TextBlock Foreground="Red"
Tag="{Binding IDP}"
Text="{Binding PacketName}">
<TextBlock.BitmapEffect>
<DropShadowBitmapEffect />
</TextBlock.BitmapEffect>
</TextBlock>
</StackPanel>
</StackPanel>
</TreeViewItem>
</Window.Resources>
<Grid>
<TreeView x:Name="tree" Margin="0,0,272,0">
</TreeView>
var q = from p in libcds.Packets
where p.IDP == 1
select new
{
IDP = p.IDP,
PacketName = p.PacketName
};
((TreeViewItem)this.FindResource("treePacket")).Items.Clear();
//TreeViewItem ttt = (TreeViewItem)this.FindResource("treePacket");
TreeViewItem tt = (TreeViewItem)this.FindResource("treePacket");
tree.Items.Add(tt);
tree.ItemsSource = q;
از شما دوستان می خوام اگه میتونید مشکل biding شدن رو برطرف کنید.
کاری کنید که اون اطلاعات در اون فیلد ها قرار بگیرد.
سلام
مشکلی در biding داشتم که به شرح زیر است:
در قسمت <Window.Resources> یک TreeViewItem به عنوان یک نمونه از آیتم سفارشی شده قرار داده ام. و در 3 جا از biding استفاده کردم.ولی در code behind وقتی آیتم سورس رو مقدار دهی میکنم، biding به صورت صحیح انجام نمی گیرد.
<Window.Resources>
<!--Packet-->
<TreeViewItem x:Key="treePacket">
<StackPanel>
<TextBlock Text="{Binding IDP}" />
<StackPanel Orientation="Horizontal">
<Image Source="/treeviewDir;component/Images/package.png" />
<TextBlock Foreground="Red"
Tag="{Binding IDP}"
Text="{Binding PacketName}">
<TextBlock.BitmapEffect>
<DropShadowBitmapEffect />
</TextBlock.BitmapEffect>
</TextBlock>
</StackPanel>
</StackPanel>
</TreeViewItem>
</Window.Resources>
<Grid>
<TreeView x:Name="tree" Margin="0,0,272,0">
</TreeView>
var q = from p in libcds.Packets
where p.IDP == 1
select new
{
IDP = p.IDP,
PacketName = p.PacketName
};
((TreeViewItem)this.FindResource("treePacket")).Items.Clear();
//TreeViewItem ttt = (TreeViewItem)this.FindResource("treePacket");
TreeViewItem tt = (TreeViewItem)this.FindResource("treePacket");
tree.Items.Add(tt);
tree.ItemsSource = q;
از شما دوستان می خوام اگه میتونید مشکل biding شدن رو برطرف کنید.
کاری کنید که اون اطلاعات در اون فیلد ها قرار بگیرد.