相关疑难解决方法(0)

Wpf:拖放到文本框

我搜索了这个问题,人们已经回答了类似的问题,但由于某种原因,我无法得到任何工作.我一定在这里遗漏了一些东西......无论如何,当我运行以下代码时,永远不会调用TextBox_DragEnter处理程序.但是,如果我将xaml中的T​​extBox元素更改为TextBlock元素,则会调用它.有没有办法从TextBox元素获得相同的行为?以下代码完全隔离了问题......

MainWindow.xaml:

<Window x:Class="Wpf1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid Name="myGrid">
        <TextBox AllowDrop="True" PreviewDragEnter="TextBox_DragEnter" PreviewDrop="TextBox_Drop" />
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

MainWindow.xaml.cs:

using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Collections.ObjectModel;

namespace Wpf1
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void TextBox_DragEnter(object sender, DragEventArgs e)
        {
            e.Effects = DragDropEffects.Copy;
        }

        private void TextBox_Drop(object sender, DragEventArgs e)
        {

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

提前谢谢了!

安德鲁

编辑:

为了澄清,我想允许将自定义对象放入文本框中.在文本框的Drop处理程序中,我想将文本框的文本设置为对象中的属性,然后将TextBox的IsReadOnly属性设置为false.我只是在为TextBox拖放时遇到一些麻烦......

wpf textbox drag-and-drop

31
推荐指数
3
解决办法
3万
查看次数

WPF网格无法正常拖放

我正在使用一个使用网格拖放操作的应用程序.应用程序由对象列表支持.删除网格时,网格的子项(我的数据)将添加到列表中.所以基本上它是一个List,但这并不是那么重要.

每个网格包含两个内部网格.第一个网格包含一个标签,第二个网格包含一个组件,如TextBox或DropDown框.(它是一个用于构建HTML表单的拖放编辑器).

我的工作更容易让用户看到,当他们拖过网格,如果他们要通过检查鼠标,而他们正在拖在网格元素的位置的上方下降,低于或元素.

我遇到的问题是当我拖过网格的子元素时,DragOver,DragDrop等只会触发.我试图从冒泡到隧道,反之亦然,但我无法弄明白.

我需要在Grid Element上设置一些允许整个Grid接受丢弃的内容吗?

c# wpf drag

4
推荐指数
1
解决办法
4189
查看次数

标签 统计

wpf ×2

c# ×1

drag ×1

drag-and-drop ×1

textbox ×1