web-dev-qa-db-ja.com

C#とWPFを使用してコードに線を引く

7セグメントディスプレイを使用してデジタル時計ディスプレイを作成しようとしています。次のようなコードを使用して、XAMLで線を描画できます。

<Line Name="line7" Stroke="Black" StrokeThickness="4" X1="10" X2="40" Y1="70" Y2="70" Margin="101,-11,362,250" />

しかし、コードで(MainWindow()から)しようとすると、動作しません:

        Line line = new Line();
        Thickness thickness = new Thickness(101,-11,362,250);
        line.Margin = thickness;
        line.Visibility = System.Windows.Visibility.Visible;
        line.StrokeThickness = 4;
        line.Stroke = System.Windows.Media.Brushes.Black;
        line.X1 = 10;
        line.X2 = 40;
        line.Y1 = 70;
        line.Y2 = 70;

アイデアは、7本の線を描画し、異なる番号に必要に応じて表示を切り替えることができるというものです。これは多くの方法で実行できると確信していますが、なぜこのようなコードで線を描画できないのですか?

22
Jesse

それはあなたの描画コード全体ですか?その場合、lineオブジェクトをサーフェスに追加する必要があります。たとえばCanvasを使用している場合:

myCanvas.Children.Add(line);

これにより、キャンバスに行が追加されます。現時点では、ラインを作成するだけで、どこにも配置していません。

描画の詳細については、WPFの このMSDNページ を参照してください。

27
keyboardP