Forum » Programiranje » c# undo, redo, paste
c# undo, redo, paste
japol ::
Kako popravim kodo, da bom lahko undo uporabu za textbox, ki ga bom z miško izbral?
// Determine if last operation can be undone in text box.
if (textBox1.CanUndo == true)
{
// Undo the last operation.
textBox1.Undo();
// Clear the undo buffer to prevent last action from being redone.
textBox1.ClearUndo();
}
Na enak način za redo in paste:
// Determine if there is any text in the Clipboard to paste into the text box.
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text) == true)
{
// Determine if any text is selected in the text box.
if (textBox1.SelectionLength > 0)
{
// Ask user if they want to paste over currently selected text.
if (MessageBox.Show("Do you want to paste over current selection?", "Cut Example", MessageBoxButtons.YesNo) == DialogResult.No)
// Move selection to the point after the current selection and paste.
textBox1.SelectionStart = textBox1.SelectionStart + textBox1.SelectionLength;
}
// Paste current text in Clipboard into text box.
textBox1.Paste();
}
Nočm da mi pasta v textbox ena ampak v tizga v katerga bom kliknu z miško.
// Determine if last operation can be undone in text box.
if (textBox1.CanUndo == true)
{
// Undo the last operation.
textBox1.Undo();
// Clear the undo buffer to prevent last action from being redone.
textBox1.ClearUndo();
}
Na enak način za redo in paste:
// Determine if there is any text in the Clipboard to paste into the text box.
if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text) == true)
{
// Determine if any text is selected in the text box.
if (textBox1.SelectionLength > 0)
{
// Ask user if they want to paste over currently selected text.
if (MessageBox.Show("Do you want to paste over current selection?", "Cut Example", MessageBoxButtons.YesNo) == DialogResult.No)
// Move selection to the point after the current selection and paste.
textBox1.SelectionStart = textBox1.SelectionStart + textBox1.SelectionLength;
}
// Paste current text in Clipboard into text box.
textBox1.Paste();
}
Nočm da mi pasta v textbox ena ampak v tizga v katerga bom kliknu z miško.
Iluvatar ::
Zdaj je odvisno od tega kje imaĹĄ te evente. Predvidevam, da imaĹĄ na textBoxu kontekstni meni in ko klikneĹĄ na npr. prilepi se ti mora zgoditi tvoja koda vendar nad tem kontrolnikom. To je preprosto. Sender objekt v eventu ToolStripMenuItem.Click je ToolStripMenuItem. Njegov owner je ContextMenuStrip, ta pa ima lastnost SourceControl, ki je dejansko kontrolnik nad katerim se je spoĹžil kontekstni meni.
Spodnja koda je v VB.net
Za prevod v C# lahko uporabiĹĄ:
http://www.developerfusion.com/tools/co...
Spodnja koda je v VB.net
Private Sub PrilepiToolStripMenuItem_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles PrilepiToolStripMenuItem.Click Dim cmstr As ContextMenuStrip = TryCast(CType(sender, Windows.Forms.ToolStripMenuItem).Owner, ContextMenuStrip) Dim mojTextBox As Windows.Forms.TextBox = TryCast(cmstr.SourceControl, Windows.Forms.TextBox) If mojTextBox IsNot Nothing Then MessageBox.Show(mojTextBox.Name) End If End Sub
Za prevod v C# lahko uporabiĹĄ:
http://www.developerfusion.com/tools/co...
Ericssony ::
Kot je povedal predhodnik: na TextBoxu uporabiš kontekstni meni (le-tega lahko potem uporabiš na vseh TextBox-ih) na katerega daš možnosti, ki bi jih rad uporabil (undo, redo, copy, cut, paste,....) v trenutno izbranem (fokusiranem) TextBox-u.
Ericssony ::
Ja, uporaba tipkovnice in bližnjic:
CTRL+C za kopiranje,
CTRL+V za prilepi,
CTRL+X za izreži,
CTRL+A za izberi vse,
CTRL+Z za razveljavi
.NET aplikacije na Win7 prikažejo na TextBox gradniku privzet meni za zgoraj opisan "problem"...
CTRL+C za kopiranje,
CTRL+V za prilepi,
CTRL+X za izreži,
CTRL+A za izberi vse,
CTRL+Z za razveljavi
.NET aplikacije na Win7 prikažejo na TextBox gradniku privzet meni za zgoraj opisan "problem"...
japol ::
sm najdu:
paste:
Control ctrl = this.ActiveControl;
if (ctrl != null)
{
if (ctrl is TextBox)
{
TextBox tx = (TextBox)ctrl;
tx.Paste();
}
}
na enak način še za cut, undo, redo,...
paste:
Control ctrl = this.ActiveControl;
if (ctrl != null)
{
if (ctrl is TextBox)
{
TextBox tx = (TextBox)ctrl;
tx.Paste();
}
}
na enak način še za cut, undo, redo,...
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# textbox polnjenjeOddelek: Programiranje | 1632 (1497) | Mitja Bonča |
» | vb.net: dynamic textboxOddelek: Programiranje | 1188 (1078) | saule |
» | C# PomočOddelek: Programiranje | 1411 (1236) | jizzer |
» | C# - keypressOddelek: Programiranje | 1636 (1367) | urkrajnc |
» | [VB] OpenOddelek: Programiranje | 1539 (1378) | Monster |