我想用 UWP(通用 Windows 平台)构建一个应用程序。使用应用程序,我想实现“拖放”功能。我使用了一些名为“AllowDrop”和“DragOver”的属性。但是我遇到了网格或一些 xaml 层次结构的问题。
当我将任何文件拖放到应用程序的任何位置时,我希望应用程序接受它。但有一个未知问题,应用程序只接受文件的特定区域。我希望以下图片可以帮助您了解我遇到的问题。 我的意图(左)但它有效(右)
下面是源代码(一个是xaml源,一个是csharp)。
<Page
x:Class="eeee_textRandomizeUWP.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:eeee_textRandomizeUWP"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid AllowDrop="True" DragOver="Grid_DragOver">
<Grid.RowDefinitions>
<RowDefinition Height="6*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<StackPanel>
<TextBlock Text="파일을 올려주세요" FontSize="{ThemeResource ListViewHeaderItemThemeFontSize}" Margin="20, 0, 0, 0"/>
<ListView Name="MainFileList">
<ListViewItem>
<StackPanel Orientation="Horizontal">
<TextBlock Text="" FontFamily="Segoe MDL2 Assets" />
</StackPanel>
</ListViewItem>
</ListView>
</StackPanel>
</Grid>
</Page>
我认为我对 Csharp 部分没有问题,但对 xaml 部分没有问题。我想知道它只适用于一个网格单元,即使我从字面上向“主网格”添加拖动动作。我说过拖放仅适用于网格的一个单元格。但是当我考虑单元格的高度时,有效区域太小了。
当我发现这个问题时,我将我的动作移到了“页面”标签。但它的工作原理与“网格”标签中的动作相同。我不知道我的问题是什么。
慕娘9325324
萧十郎
相关分类