簡體   English   中英

如何在WPF中繪制可單擊的矩形

[英]How to draw a clickable rectangle in WPF

我是WPF應用程序的絕對初學者,需要一些幫助。 我要做的就是從A點到B點繪制一個矩形, 能夠檢測到點擊矩形的時間。 因此,當它被點擊時,它變成黃色,再次點擊時,變成紅色。

有多種方法可以做到這一點。

  1. 向矩形添加單擊處理程序,並從后面的代碼切換其顏色
  2. 將矩形的顏色綁定到“視圖模型”屬性,並使用“委托命令”在單擊時設置該屬性。

如果您剛開始使用XAML,第一個是最簡單的(盡管如果您想要遵守MVVM,建議使用#2)。

 <Rectangle x:Name="rect" 
    Width="100" Height="100" Fill="Aquamarine" 
    MouseLeftButtonDown="Rectangle_MouseLeftButtonDown" />

代碼隱藏處理程序:

 bool toggle = false;

 private void Rectangle_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
     rect.Fill = new SolidColorBrush(toggle ? Colors.Aquamarine : Colors.DarkRed);
     toggle = !toggle;
 }

使用Rectangle控件。

<Rectangle
    Height="100"
    Width="100"
    MouseLeftButtonUp="Rectangle_MouseLeftButtonUp_1"

其中Rectangle_MouseLeftButtonUp_1是包含類的事件處理程序。

請注意,除非Rectangle具有背景,否則您必須單擊邊框。 背景可以是白色,但如果要點擊,則需要指定背景。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM