2017-01-02 70 views
1

嘿,我想弄明白,我如何能够在Xaml Toolkit中的ButchersBoy Material Design中发现Snackbar的持续时间,发现herehereWPF材料设计小吃棒的持续时间

如果我可以使用持续时间或不使用状态,那么也许我只是在代码中查看它?有一个参数允许这个吗?

我当前的代码是这样的(后面的代码):

items.Snackbar.MessageQueue.Enqueue("Wow, easy!") 

而XAML: “哇,很容易”

<materialDesign:Snackbar 
     HorizontalAlignment="Stretch" 
     MessageQueue="{materialDesign:MessageQueue}" 
     x:Name="Snackbar" 
     Grid.Row="1" 
     Grid.ColumnSpan="2" /> 

做哪些工作,并显示但它消失的速度太快了,所以我试图找到一种方法来做一个持续时间。

回答

2

SnackbarMessageQueue具有下面的构造:

public SnackbarMessageQueue(TimeSpan messageDuration) 

所以,你可以创建一个视图模型消息队列,并分配,如:

<materialDesign:Snackbar MessageQueue="{Binding MyCustomMessageQueue}" /> 

或者,使用后面的代码,命名控制:

<materialDesign:Snackbar x:Name="MySnackbar" /> 

然后在代码隐藏中,您可以指定一个新的快餐栏:

var myMessageQueue = new SnackbarMessageQueue(TimeSpan.FromMilliseconds(8000)); 
MySnackbar.MessageQueue = myMessageQueue; 

将来我们可以将此添加到您的示例中使用的标记扩展中,随时在GitHub上为此提出请求。

+0

谢谢你的回复@James Willock。让我说这是一个非常棒的WPF工具包!我希望我知道如何做一些事情,因为我希望看到一些插入到WPF中的jQuery插件动画。除此之外 - 你可以举一个例子来说明** messageDuration **的代码隐藏吗?我似乎无法在我的** items.Snackbar.SnackbarMessageQueue(9000)**中调用该函数? – StealthRT

+0

嘿,我已经扩大了代码隐藏的答案。 –

+1

太棒了,感谢@詹姆斯·威洛克的帮助! – StealthRT