【问题标题】:Cannot enter dot in a textbox无法在文本框中输入点
【发布时间】:2010-03-30 09:23:19
【问题描述】:

在我的网格视图中,我有链接类型列。因为我们无法编辑这种类型的单元格,所以如果用户选择单元格进行编辑,我将显示一个文本框。但我的文本框无法读取点字符。我检查了“按键”和“文本更改”事件,但没有触发事件以将点作为输入。
编辑: 我可以输入除点以外的任何字符或符号.. ;(

我在gridview的单元格点击事件上显示文本框

if (DataGrid.Columns[e.ColumnIndex].GetType().Name == "DataGridViewLinkColumn")
{
txt_Data.Location    =   DataGrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Location;

txt_Data.Size        =   DataGrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Size;

txt_Data.Visible     =   true;
txt_Data.Focus();
}

并将值分配给单元格

private void txt_Data_TextChanged(object sender, EventArgs e)
{
  DataGrid.CurrentCell.Value = txt_Data.Text;
}

【问题讨论】:

  • 您能详细说明一下吗?您是附加到文本框或网格上的关键事件吗?
  • 所以要明确 txt_Data_TextChanged 事件没有触发?还是只是当前单元格没有得到点?
  • 不,我不能在文本框中输入点..如果我按点没有任何事情发生..:(
  • 我真的很抱歉,但我还是忍不住说“点是个真正的问题”... :)
  • 你知道发生了什么吗?我有一个类似的问题,虽然我有更多的字符无法输入。 ! " $ % & ( ' #。我是 .net c# 的新手,并且继承了此代码。任何帮助将不胜感激。

标签: c# winforms textbox


【解决方案1】:

几天前我遇到了这个问题,这让我发疯了..终于弄明白了,所以我回到这里来开导:)问题是您的编辑控件的EditingControlWantsInputKey方法..确保它为所有字符(或至少要支持的字符)返回 true .. 完成! :D

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-08
    • 2015-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-12
    相关资源
    最近更新 更多