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) |