gpt4 book ai didi

c# - DataGrid 不能输入逗号或点作为值?

转载 作者:太空宇宙 更新时间:2023-11-03 23:01:25 25 4
gpt4 key购买 nike

我得到了以下代码。如果我现在尝试在我的“EK-Preis”列中输入一个逗号或一个点,这是一个 double ,它不起作用。我只会写数字或字母。如果我输入一个字母,单元格会变成红色轮廓,非常完美。有什么想法吗?

这是我的代码:

        private void dgFolien_RowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
{
DataRowView drv = e.Row.DataContext as DataRowView;
try
{
if (drv != null)
{
using (OleDbConnection conn = new OleDbConnection(connection.ConnectionString))
{
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
cmd.Parameters.Add(new OleDbParameter("@var1", drv["Hersteller"].ToString()));
cmd.Parameters.Add(new OleDbParameter("@var2", drv["Serie"].ToString()));
cmd.Parameters.Add(new OleDbParameter("@var3", drv["Farbe"].ToString()));
cmd.Parameters.Add(new OleDbParameter("@var4", drv["EK-Preis"].ToString()));
cmd.Parameters.Add(new OleDbParameter("@var5", drv["FolienID"].ToString()));


cmd.CommandText = "UPDATE Folien SET Hersteller=@var1, Serie=@var2, Farbe=@var3, [EK-Preis] = @var4 WHERE FolienID=@var5";
cmd.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show("Error " + ex);
}
}

这是我的 XAML:

       <DataGrid x:Name="dgFolien" AutoGenerateColumns="False" CanUserAddRows="False" HorizontalAlignment="Left" 
Height="268" Margin="10,138,0,0" VerticalAlignment="Top" Width="489" ColumnWidth="*" RowEditEnding="dgFolien_RowEditEnding">
<DataGrid.Columns>
<DataGridTextColumn Header="Hersteller" Binding="{Binding Hersteller, UpdateSourceTrigger=PropertyChanged}" />
<DataGridTextColumn Header="Serie" Binding="{Binding Serie, UpdateSourceTrigger=PropertyChanged}" />
<DataGridTextColumn Header="Farbe" Binding="{Binding Farbe, UpdateSourceTrigger=PropertyChanged}" />
<DataGridTextColumn Header="EK-Preis" Binding="{Binding EK-Preis, UpdateSourceTrigger=PropertyChanged}" />
</DataGrid.Columns>
</DataGrid>

谢谢!

最佳答案

UpdateSourceTrigger=PropertyChanged 强制在每次击键时处理文本。将其更改为 UpdateSourceTriggerLostFocus 。例如,如果您的值为 12.45,则在检测到 '.' 时,它期望 45 是绑定(bind)到 12 的属性。

关于c# - DataGrid 不能输入逗号或点作为值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42954309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com