Surface SDK Librarystack丢失事件
问题描述:
我遇到了Librarystack drop事件的问题。 我需要更改一个librarystack上的drop的行为,但是当我绑定xaml中的drop事件时,事件永远不会被提升!Surface SDK Librarystack丢失事件
<s:LibraryStack AllowDrop="True" Drop="infoStack_Drop_1" PreviewDrop="infoStack_Drop_1" x:Name="infoStack" Canvas.Left="1" Canvas.Top="140" Height="280.5" Width="329" Background="Transparent">
另一个问题: 我可以改变残疾人SurfaceTextBoxes的风格?
答
我相信这应该解决您的问题:
http://msdn.microsoft.com/en-us/library/ff727842.aspx
“更改默认拖动和删除行为 默认情况下,当一个项目从LibraryBar控制拖放到另一个控制,它仍保持在LibraryBar控件中处于非活动状态(灰显状态)。您可以通过将PreviewDropEvent事件处理程序附加到目标控件来更改此行为。“
C#
#region AddPreviewDropHandler
//Add the preview drop event to the stack
SurfaceDragDrop.AddPreviewDropHandler(MainLibraryStack, OnPreviewDrop);
#endregion
“当拖动项目在LibraryStack控制下降,附加的事件引发。在事件处理程序,检查,看看是否到DragSource财产属于源LibraryBar控制。如果它会将Effects属性更改为DragDropEffects,以便将该项目从源LibraryBar控件中移除。“
C#
#region OnPreviewDrop
//Add what stack effects you want here
private void OnPreviewDrop(object sender, SurfaceDragDropEventArgs e)
{
if (MainLibraryBar.IsAncestorOf(e.Cursor.DragSource))
{
e.Effects = DragDropEffects.Move;
}
}
#endregion