我有一个RadSpinEditor,在其中键入一些值; 每当我在RadSpinEditor中键入数字时,都会运行radPanel_Paint的事件。 在RadSpinEditor上进行每种键入之后,光标会跳到第一个位置,因此我无法键入13,因为当我按1时,光标会移到第一个位置,因此它将是31; 就像这样:
private void radSpinEditor_KeyUp(object sender, KeyEventArgs e)
{
this.radPanel.Refresh()
}
private void radPanel_Paint(object sender, PaintEventArgs e)
{
decimal x = this.radSpinEditor.Value;
//then i draw a rectangle with this x and some other variables
}
答案 0 :(得分:0)
找到了此问题的原因以及如何解决。 我不知道这是否是最好的方法,但就我而言,它可行。
读取RadSpinEditor中的值后,将以某种方式更改文本,以便控件进行调整。
解决方案:
private void radSpinEditor_KeyUp(object sender, KeyEventArgs e)
{
this.radPanel.Refresh()
}
private void radPanel_Paint(object sender, PaintEventArgs e)
{
decimal x = decimal.Parse(this.radSpinEditor.GetPlainText());
//then i draw a rectangle with this x and some other variables
}
使用radSpinEditor.GetPlainText()然后将文本解析为十进制似乎可以解决问题。