Ik ben bezig met een eenvoudige query editor te maken in C#. Hiervoor gebruik ik een treelist van DevExpress (www.devexpress.com) om de databankstructuur voor te stellen. Daarnaast gebruik ik een RichTextBox om de query voor te stellen met gekleurde keywords (INSERT INTO, SELECT, FROM, ...).
Ik wil nu nodes van m'n treelist droppen op de RichTextBox. Ik gebruik hiervoor de volgende code:
Nu blijkt de GetData niet te werken. Het geeft mij altijd null terug. Ik heb al GetFormats gedaan en het formaat dat ik opgeef staat er zeker in. Ook de GetDataPresent met het opgegeven formaat geeft true terug. Alleen de GetData werkt niet.
Ik heb dezelfde code ook eens even losgelaten op een listbox en daar werkt de GetData zonder enig probleem.
Zie ik hier iets over het hoofd... Kan iemand mij helpen ?
Ik wil nu nodes van m'n treelist droppen op de RichTextBox. Ik gebruik hiervoor de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| private void rtEditor_DragEnter(object sender, DragEventArgs e)
{
if(e.Data.GetDataPresent("DevExpress.XtraTreeList.Nodes.TreeListNode"))
if(GetDragNode(e.Data) != null)
e.Effect = DragDropEffects.Copy;
}
private void rtEditor_DragDrop(object sender, DragEventArgs e)
{
DevExpress.XtraTreeList.Nodes.TreeListNode node = GetDragNode(e.Data);
if(node!=null)
{
string firstPart, lastPart;
int cursorPos = rtEditor.SelectionStart;
firstPart = rtEditor.Text.Substring(0, cursorPos);
lastPart = rtEditor.Text.Substring(cursorPos);
string newText = firstPart + node.GetDisplayText(this.treeListColumn1) + lastPart;
rtEditor.Text = newText;
}
}
private DevExpress.XtraTreeList.Nodes.TreeListNode GetDragNode(IDataObject data)
{
return data.GetData("DevExpress.XtraTreeList.Nodes.TreeListNode")
as DevExpress.XtraTreeList.Nodes.TreeListNode;
} |
Nu blijkt de GetData niet te werken. Het geeft mij altijd null terug. Ik heb al GetFormats gedaan en het formaat dat ik opgeef staat er zeker in. Ook de GetDataPresent met het opgegeven formaat geeft true terug. Alleen de GetData werkt niet.
Ik heb dezelfde code ook eens even losgelaten op een listbox en daar werkt de GetData zonder enig probleem.
Zie ik hier iets over het hoofd... Kan iemand mij helpen ?