CultureInfo 和列表框中表示的困难

Difficulties with CultureInfo and representation in Listbox

我试图在我的列表框中表示正确的双精度值。例如,我的 SQL 数据库中的值表示为“0,09”。现在,我将特定列中的这些值放入带有 "SELECT DISTINCT" 语句的列表框中。在数据库中搜索时,我需要从“0,09”开始写“0.09”才能找到该值。那不是问题。我试图用

转换每个双精度值
 CultureInfo culInfo = new CultureInfo("en-US");
 for (int i = 0; i < convertCol.Count; i++)
            {
                storeDouble = convertCol[i];
                convertToString = storeDouble.ToString("0.######");


                if (convertToString.Contains(","))
                {
                    convertedString = convertToString.Replace(",", ".");
                    convertBackToDouble = double.Parse(convertedString, culInfo);
                        //Convert.ToDouble(convertedString);
                    convertedCol.Add(convertBackToDouble);

                }

                else 
                {
                    convertedCol.Add(convertCol[i]);

                }
            }

            DataColumn dc = new DataColumn(form1.getColName());
            dc.DataType = typeof(double);
            datTable.Columns.Add(dc);

            for (int j = 0; j < convertedCol.Count; j++)
            {
                datTable.Rows.Add(convertedCol[j]);
            }

            form1.colStorList.DisplayMember = form1.getColName();
            form1.colStorList.ValueMember = "Column";
            form1.colStorList.DataSource = datTable;

当我离开 cultureInfo 并尝试 "Convert.ToDouble" 时,“0,09”被转换为“9.0”。使用 cultureInfo 似乎是正确的,但我的列表框仍然有像“0,09”这样的条目。如何 "force" 列表框将我的值显示为“0.09”?

尝试添加此代码

form1.colStorList.FormatInfo = new CultureInfo("en-US");

之后

form1.colStorList.ValueMember = "Column";