私はグラフ上のちょうど2つの垂直線である "分析範囲"をプロットしているチャートコントロールに取り組んでいます。 2つの分析範囲の行だけを削除する方法がわからないので、分析範囲を変更するときに問題が発生するので、グラフをクリアして、実際のデータ値とそれ以外のものを再びプロットします。これらのUI要素にタグを付ける方法はありますか(つまり、分析範囲はグリッドラインのUI要素なので)、具体的に削除することはできますか?私はどこかのUI要素の "インデックス"を保存してこれらを削除することができますが、これを行うよりクリーンな方法があるのだろうかと思います。どうもありがとう。WPF - Canvas.Childrenから特定の子を削除する方法はありますか?
2
A
答えて
2
すべてUIElement
には、文字列であるUIDがあります。範囲線のUIDを予測可能なものに設定することができます。ユニークでなければならないことを心に留めておく。その後、グリッド線のみを削除する必要がある場合は、削除する必要のあるUI要素のリストを収集して子コレクションを繰り返して削除します。
このような何か:
Canvas c = new Canvas();
c.Children.Add(new UIElement() { Uid = "Line1" });
c.Children.Add(new UIElement() { Uid = "Line2" });
c.Children.Add(new UIElement() { Uid = "Line3" });
c.Children.Add(new UIElement() { Uid = "Text1" }); //This is added as a sample
List<UIElement> itemstoremove = new List<UIElement>();
foreach (UIElement ui in c.Children)
{
if (ui.Uid.StartsWith("Line"))
{
itemstoremove.Add(ui);
}
}
foreach (UIElement ui in itemstoremove)
{
c.Children.Remove(ui);
}
動作するはずです。デバッグ時にこのコードを簡単にテストすると、子どもの数は1になり、リストにはUid of Text1があるUIElement
だけが表示されます。
1
Canvas
に2行を追加すると、2行の参照を保持できません。そうすれば、それらを再描画する必要があるときは、Canvas.Children.Remove(line1)
とCanvas.Children.Remove(line2)
を実行します。その後、線の参照を更新し、キャンバスに再度追加します。線自体を削除して再追加するのではなく、線自体のX値とY値を更新するだけでも可能です。このようにして、Chartは単に行を移動します。
しかし、基本的には、キーをCanvas
に追加してからその行への参照を維持することです。
関連する問題
- 1. swift/SpriteKitで親から特定の子供を削除する方法はありますか?
- 2. テキストファイルから特殊文字を削除する方法はありますか?
- 3. DelphiからAccessから特定の行を削除する方法はありますか?
- 4. テキストファイルから特定の行を削除または削除する方法
- 5. WPF DataGridの特定の列からフォーカスを削除します
- 6. JavaFxでは、グリッド区画から特定のノードを座標で削除する方法はありますか?
- 7. 特定の形状をWPFから削除する
- 8. awkを使用してファイルから特定の列を削除する方法はありますか?
- 9. rails:JSONレスポンスでオブジェクトの配列から特定のプロパティを削除する方法はありますか?
- 10. 実行時にコントローラビューのパスから特定のビューパスを削除する方法はありますか?
- 11. コードベース全体から廃止された特定のコード行を削除する方法はありますか?
- 12. 依存ファイル(.d)から特定の(非システム)ヘッダーを削除する方法はありますか。
- 13. iOS:特定のファイルをファイルシステムから安全に削除する方法はありますか?
- 14. 文字列から特定の文字を削除する方法はありますか?
- 15. データベースから特定の行のデータを削除する方法
- 16. yoctoから特定のパッケージを削除する方法
- 17. Comboboxアイテムから特定のテキストを削除する方法
- 18. 特定のユーザーロールワードプレスからtinyMCEボタンを削除する方法
- 19. $ .cookieから特定の値を削除する方法
- 20. データベース(SQL/PHP)から特定のデータを削除する方法
- 21. 特定のシャードからデータを削除する方法
- 22. 配列から特定の要素を削除する方法
- 23. 特定のdivスパンクラス値からスペースを削除する方法
- 24. MySQLバイナリログから特定のクエリを削除する方法
- 25. firebaseリアルタイムデータベースから特定のオブジェクトを削除する方法
- 26. .txtファイルから特定の行を削除する方法PHP
- 27. スピンナーから特定のアイテムを削除する方法
- 28. PDFBoxで特定のイメージをPDFから削除する方法
- 29. データフレームから特定の列を削除する方法
- 30. テキストファイルから特定の行を削除する方法