Jag behöver ha redo och undo i min richtextbox, men jag får det inte att fungera. Jag hittade ett svar på nätet detta kanske kan vara nåt: http://www.codeproject.com/cs/menu/TcMagicalEditMenu.asp Tack men icke.Problem med undo och redo i richtextbox.
<code>
private void richTextBox1_TextChanged(object sender, System.EventArgs e)
{
if(richTextBoxEx.CanUndo == true)
{// Determines if the redo operation deletes text.
if (richTextBoxEx.UndoActionName != "Delete")
menuItem8.Enabled=true;
}
if(richTextBoxEx.CanRedo == true)
{// Determines if the redo operation deletes text.
if (richTextBoxEx.RedoActionName != "Delete")
menuItem9.Enabled=true;
}
//osv
</code>
Som ni se så har jag lagt detta under richTextBox1_TextChanged, jag antar att det är det enda stället att lägga det på.
<code>
private void uUndo()
{
richTextBoxEx.Undo();
}
private void rRedo()
{
richTextBoxEx.Redo();
}
</code>
Vad som händer är, att så fort som någonting skrivs in, så enablas menyn Undo, men klickar jag på den så händer ingenting.
Några bra förslag?Sv: Problem med undo och redo i richtextbox.
<code>
I also found a bug with RichTextBox.Text, that I think is in both .NET v1.0 and 1.1. Whenever the Text property is accessed (no matter what for), the Undo and Redo buffers that the control maintains for you are cleared. Yeah, that kinda sucks, and it would explain why my Undo and Redo menu items weren't working since all that I was doing was asking the RichTextBox to do the work for me. The work around in this case is to go the WinAPI route - use the EM_GETTEXTEX and EM_GETTEXTLENGTHEX messages, and the bug goes away. At least I can seemlessly implement this by subclassing RichTextBox and have it all just work.
</code>
Men jag förstår inte hur jag skall göra med
EM_GETTEXTEX
EM_GETTEXTLENGTHEX Sv: Problem med undo och redo i richtextbox.
Sv: Problem med undo och redo i richtextbox.
Den var väldigt intressant, och jag har sparat projectet.
Nej jag tycks ha ett annat problem, troligen därför att jag har en "speciell" richtextbox, gjord för utskrift.
Det verkar som om jag inte skulle kunna utnytja undo...