###前提・実現したいこと
WPFでの質問です
http://d.hatena.ne.jp/CoMo/20110330/1301499635
上記URLを参考にしながらDrag&Dropの処理を作成しています
実現したいことは参考URLの機能に整列ボタンを追加して
生成されたthumbコントロールを任意の場所に移動したいと考えています
###試したこと
動的に生成されるthumbの親コントロールにbindさせました
<ItemsControl Name="DragList" Width="900" ItemsSource="{Binding}"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <Canvas/> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> <ItemsControl.ItemContainerStyle> <Style TargetType="ContentPresenter"> <Setter Property="Canvas.Left" Value="{Binding PointX}"/> <Setter Property="Canvas.Top" Value="{Binding PointY}"/> </Style> </ItemsControl.ItemContainerStyle> <ItemsControl.ItemTemplate> <DataTemplate> <Thumb DragDelta="Thumb_DragDelta"> <Thumb.Template> <ControlTemplate> <StackPanel Orientation="Vertical"> <Rectangle Fill="LightBlue" Stroke="Blue" Width="100" Height="60" /> </StackPanel> </ControlTemplate> </Thumb.Template> </Thumb> </DataTemplate> </ItemsControl.ItemTemplate> </ItemsControl>
public class GraphData { public int PointX { get; set; } public int PointY { get; set; } } public ObservableCollection<GraphData> GraphDataList; public MainWindow() { InitializeComponent(); DragList.ItemsSource = GraphDataList; } //追加ボタン private void Button_Click(object sender, RoutedEventArgs e) { GraphData addItems = new GraphData(); addItems.PointX = 0 + (GraphDataList.Count * 110); addItems.PointY = 10; GraphDataList.Add(addItems); } //整列ボタン private void Button2_Click(object sender, RoutedEventArgs e) { foreach (var item in GraphDataList) { item.PointX += 10; item.PointY += 10; } }
###問題点
整列ボタンを押しても生成されたthumbコントロールが移動しません
どのような対応を行えばthumbコントロールを操作できるかご教示願えないでしょうか
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/21 07:25