如何调用ListView SelectionChanged方法?

时间:2015-09-11 16:16:54

标签: c# wpf

我更改了ListView项目选择时调用的以下方法:

private void SlideTransitionsList_SelectionChanged(object sender, SelectionChangedEventArgs e)
{

.........
}

我想从其他方法中调用此方法。我该怎么做?

3 个答案:

答案 0 :(得分:5)

这是一个事件处理程序。它触发了UI操作。直接调用它并不是一个好主意。在其中放入一个方法,然后如果需要从其他地方调用该方法。

private void SlideTransitionsList_SelectionChanged(object sender,     SelectionChangedEventArgs e)
{
    DoSomeStuffOnSelectionChanged();
}

public void DoSomeStuffOnSelectionChanged()
{
    // enter code here
}

答案 1 :(得分:2)

SlideTransitionsList_SelectionChanged处理程序中的所有代码提取到其他方法并调用它。

private void SlideTransitionsList_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    DoSmth();
}
...
private void OtherMethod()
{
    DoSmth();
}

答案 2 :(得分:0)

如果未使用sendere的参数,只需直接从任何其他方法调用该方法即可。

SlideTransitionsList_SelectionChanged(null, null);

请注意,您不是通过调用此方法来触发事件;这只是事件的回调方法,可以被任何其他方法使用。

其他答案中给出的建议同样正确,但只是编码范式的合成因素,可以作为偏好使用,也可以用作样式。