1
我有我的UWP應用程序的拖放設置,我想定製用戶拖動的視圖。目前它與ListViewItem
完全相同,但它有一個Border
(提供背景和圓角邊緣),我不想在拖動視圖中顯示。如何自定義在拖放過程中顯示的視圖?
這只是一個簡單的CanDragItems
和AllowDrop
與迷上DragItemsStarting
,DragEnter
和Drop
事件。
有沒有辦法做到這一點?
我有我的UWP應用程序的拖放設置,我想定製用戶拖動的視圖。目前它與ListViewItem
完全相同,但它有一個Border
(提供背景和圓角邊緣),我不想在拖動視圖中顯示。如何自定義在拖放過程中顯示的視圖?
這只是一個簡單的CanDragItems
和AllowDrop
與迷上DragItemsStarting
,DragEnter
和Drop
事件。
有沒有辦法做到這一點?
但它有一個邊框(提供背景和圓角邊緣)我不想在拖動視圖中顯示。
要刪除ListviewItem
的Bolder
,你不需要定製拖拽視圖,你可以設置Bolder
元素的子元素CanDrag
,設置CanDrag
屬性爲Bolder
子元素後,如TextBlock
,拖動項目時不會看到Bolder
效果。代碼示例如下:
<ListView x:Name="SourceListView"
Header="SourceListView"
SelectionMode="Extended">
<ListView.ItemTemplate>
<DataTemplate>
<Border Background="Pink"
BorderBrush="Gray"
BorderThickness="2"
CornerRadius="10">
<TextBlock Text="{Binding text}" DragStarting="TextBlock_DragStarting" CanDrag="True" />
</Border>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我想自定義用戶拖動視圖。
如果您仍想定製您的拖動用戶界面,您可以直接使用現有的類DragUIOverride來定製您的拖動視圖。 例如你不希望顯示在拖動視圖的箭頭,你可以設置IsGlyphVisible
屬性在DragOver
事件是這樣的:
private void cnvDrop_DragOver(object sender, DragEventArgs e)
{
e.DragUIOverride.IsGlyphVisible = false;
}
而官方樣本XamlDragAndDrop,在scenario2顯示有關DragUI的詳細信息定製。
你能分享你的代碼嗎? – aloisdg
這只是一個簡單的'CanDragItems'和'AllowDrop',它帶有'DragItemsStarting','DragEnter'和'Drop'事件。我不知道還有什麼可以分享的。 – vrwim
你能分享一個gif /截圖嗎? – Quakenxt