2
我有一個網格,其中包含3行,其中之一包含可以編輯的文本框。網格坐落在一個paretn中,該paretn提供拖拽功能以使其能夠在畫布上移動。爲了實現這一點,我需要將IsHitTestVisible設置爲false,以便讓鼠標單擊傳遞給父對象。使命中測試可見屬性不同的網格行
問題是,當我這樣做時,我不能選擇網格中的文本框,即使可見測試可見性設置爲True;
<Grid Background="{StaticResource NodeBackground}" IsHitTestVisible="True">
<Grid.RowDefinitions>
<RowDefinition Height="2*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="2*"/>
</Grid.RowDefinitions>
<TextBox Text="{Binding Data}" Foreground="White" Background="Transparent" FontFamily="Consolas" FontSize="15" TextAlignment="Center" Grid.Row="1" BorderThickness="0" />
</Grid>
是否可以設定在每行的基礎命中試驗性質,因此,如果任一兩個空行中被擊中,他們將繼續通過點擊到父容器,但仍然能夠選擇中間行的文本框?
乾杯。
爲什麼你需要'IsHitTestVisible'?藉助[事件冒泡](http://msdn.microsoft.com/en-us/library/ms742806.aspx#routing_strategies),您的網格的父節點將獲取網格中所有未由「文本框」處理的鼠標事件'。我錯過了什麼嗎? –
分享您的拖放邏輯。因爲通常這應該像你期望的那樣工作,就像@ alpha-mouse所說的那樣。 –