電子回路シミュレーションソフトウェアで使用されるブレッドボードに似たWPFを使用してユーザーコントロールを構築しています。
ユーザーはそのブレッドボードにICを追加できるようになります。
ブレッドボードの作成はこれで完了しました。主に、実際のブレッドボードのノードの数と同じ数のセルを持つグリッドで構成されています。
そして今、私はユーザーにとを指定してそのグリッドにICを追加させ、Grid.Row
とを指定しGrid.Column
てそのサイズを決定させました。Grid.RowSpan
Grid.ColumnSpan
C#コードは次のとおりです。
private int usedVerticalPins = 0;
void AddICs(int pinNum)
{
var rect = new Rectangle() { Fill = new SolidColorBrush(Colors.Black),Stroke = new SolidColorBrush(Colors.White)};
rect.SetValue(Grid.RowProperty, usedVerticalPins);
rect.SetValue(Grid.ColumnProperty, 7);
rect.SetValue(Grid.RowSpanProperty, (pinNum / 2));
rect.SetValue(Grid.ColumnSpanProperty, 3);
BreadboardControl.BreadboardGrid.Children.Add(rect);
usedVerticalPins += (pinNum / 2);
}
でもご覧のように、ICではなく普通の長方形のように見えるので、Rectangleクラスを継承して見た目を編集してみると、封印されたクラスであることがわかりました。
私はICがすべてのピンともので同じように見えることを望みます。
それで、あなたはそれをする方法を提案できますか..!?