SelectionChangedEventArgs 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供 SelectionChanged 事件的資料。
public ref class SelectionChangedEventArgs : System::Windows::RoutedEventArgs
public class SelectionChangedEventArgs : System.Windows.RoutedEventArgs
type SelectionChangedEventArgs = class
inherit RoutedEventArgs
Public Class SelectionChangedEventArgs
Inherits RoutedEventArgs
- 繼承
範例
下列範例會 ListBox 建立 並訂閱 SelectionChanged 事件。 它會使用 SelectionChangedEventArgs ,在 中 ListBox 尋找選取的專案。
<WrapPanel Width="500" Orientation="Horizontal" Name="rectanglesPanel">
<WrapPanel.Resources>
<Style TargetType="Rectangle">
<Setter Property="Height" Value="20"/>
<Setter Property="Width" Value="20"/>
<Setter Property="Margin" Value="5"/>
</Style>
</WrapPanel.Resources>
</WrapPanel>
<ListBox Name="myListBox" HorizontalAlignment="Left" SelectionMode="Extended"
Width="265" Height="55" Background="HoneyDew" SelectionChanged="myListBox_SelectionChanged"
ItemsSource="{Binding Source={StaticResource Colors}}" IsSynchronizedWithCurrentItem="true">
</ListBox>
void myListBox_SelectionChanged(object sender, SelectionChangedEventArgs args)
{
BrushConverter converter = new BrushConverter();
// Show Rectangles that are the selected colors.
foreach (string color in args.AddedItems)
{
if (GetRectangle(color) == null)
{
Rectangle aRect = new Rectangle();
aRect.Fill = (Brush) converter.ConvertFrom(color);
aRect.Tag = color;
rectanglesPanel.Children.Add(aRect);
}
}
// Remove the Rectangles that are the unselected colors.
foreach (string color in args.RemovedItems)
{
FrameworkElement removedItem = GetRectangle(color);
if (removedItem != null)
{
rectanglesPanel.Children.Remove(removedItem);
}
}
}
FrameworkElement GetRectangle(string color)
{
foreach (FrameworkElement rect in rectanglesPanel.Children)
{
if (rect.Tag.ToString() == color)
return rect;
}
return null;
}
Private Sub myListBox_SelectionChanged(ByVal sender As Object, ByVal args As SelectionChangedEventArgs)
Dim converter As BrushConverter = New BrushConverter()
Dim color As String
' Show Rectangles that are the selected colors.
For Each color In args.AddedItems
If GetRectangle(color) Is Nothing Then
Dim aRect As Rectangle = New Rectangle()
aRect.Fill = CType(converter.ConvertFrom(color), Brush)
aRect.Tag = color
rectanglesPanel.Children.Add(aRect)
End If
Next
' Remove the Rectangles that are the unselected colors.
For Each color In args.RemovedItems
Dim removedItem As FrameworkElement = GetRectangle(color)
If Not removedItem Is Nothing Then
rectanglesPanel.Children.Remove(removedItem)
End If
Next
End Sub
Private Function GetRectangle(ByVal color As String) As FrameworkElement
Dim rect As FrameworkElement
For Each rect In rectanglesPanel.Children
If rect.Tag.ToString() = color Then
Return rect
End If
Next
Return Nothing
End Function
建構函式
SelectionChangedEventArgs(RoutedEvent, IList, IList) |
初始化 SelectionChangedEventArgs 類別的新執行個體。 |
屬性
AddedItems |
取得包含已選取之項目的清單。 |
Handled |
取得或設定值,這個值表示路由事件在傳送路由時之事件處理的目前狀態。 (繼承來源 RoutedEventArgs) |
OriginalSource |
在父類別進行任何可能的 Source 調整之前,取得純點擊測試所判定的原始報告來源。 (繼承來源 RoutedEventArgs) |
RemovedItems |
取得包含未選取之項目的清單。 |
RoutedEvent |
取得或設定與這個 RoutedEventArgs 執行個體相關聯的 RoutedEvent。 (繼承來源 RoutedEventArgs) |
Source |
取得或設定引發事件之物件的參考。 (繼承來源 RoutedEventArgs) |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
InvokeEventHandler(Delegate, Object) |
執行適當的型別轉換,以呼叫 SelectionChangedEventHandler 事件的型別安全 SelectionChanged 委派。 |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
OnSetSource(Object) |
在衍生類別中覆寫時,每當執行個體的 Source 屬性值變更,便會提供通知回呼進入點。 (繼承來源 RoutedEventArgs) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |