我正在使用Windows Phone 8.1 winRT应用程序并尝试使用索引属性从代码后面加载FilpviewItem但是它对我来说不起作用我们如何从c#中滑动flipviewitem
以下是我的代码无效
TextBox
答案 0 :(得分:0)
这里有趣的是,当我将代码粘贴到我的系统上时,你的代码运行得非常好。但是,您可以使用数据绑定以更清洁的方式实现此目的。
创建一个名为FlipSelectedIndex
的属性。
private int flipSelectedIndex = 0;
public int FlipSelectedIndex
{
get { return flipSelectedIndex; }
set
{
if (value <= flip.Items.Count - 1)
{
flipSelectedIndex = value;
RaisePropertyChanged("FlipSelectedIndex");
}
}
}
添加INotifyPropertyChanged
接口并隐式实现它,然后向其中添加一个名为RaisePropertyChanged
的事件,通过向,INotifyPropertyChanged
声明添加ClassName : Page
接口来执行此操作添加以下方法:
public event PropertyChangedEventHandler PropertyChanged;
public void RaisePropertyChanged(string property)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(property));
}
请注意:PropertyChanged?.Invoke(this,new PropertyChangedEventArgs(propertyName));仅适用于Visual Studio 2015中提供的C#6.0。对于任何版本,您都必须使用
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
现在完成后很简单:只需按一下按钮,只需根据需要使用FlipSelectedIndex++;
或FlipSelectedIndex--;
。
SelectedIndex
属性添加到数据绑定来更新XAML,如下所示:SelectedIndex="{Binding FlipSelectedIndex,Mode=TwoWay}"
使用双向绑定以确保如果更改Flipview上的选定视图,则FlipSelectedIndex也会更新滑动操作而不是按钮。请务必记住使用DataContext="{Binding RelativeSource={RelativeSource Self}}"
将页面的数据上下文添加到后面的代码中。否则绑定将不起作用。
有关详细信息,请参阅FlipView here