我是c#初学者,在Visual Studio-2010中使用Silver Light-5进行web开发。我有我的图形用户界面在运行我的代码,它的图形用户界面是由xaml创建的,按钮点击在c#中处理。
现在我要实现的是:
我正在尝试创建一个图形用户界面,其中我使用组合框,其中将包含像这样的选项(请参阅此链接) http://prntscr.com/36l58s在此链接中,我选择一个数据类型从5个给定的数据类型(这是字节,sbyte,短,整型,长)。然后,我想将这个数据类型赋给c#代码中的一个变量,如下所示:(假设我在其中选择了"short“)。然后我想把它赋给一个变量(假设这里是"varble“),就像这样的short varble =1000;
如何做到这一点?
我的xaml代码是:
and c# code for it is (Inside the constructor) : comboBox1.Items.Add("byte");
comboBox1.Items.Add("sbyte");
comboBox1.Items.Add("short");
comboBox1.Items.Add("int");
comboBox1.Items.Add("long");ComboBox的按钮点击事件为:
private void comboBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
}为什么我要尝试这样做?
实际上,我只是想创建一个GUI,我可以在运行时从给定的指定选项中选择变量的数据类型,我想使用combobox是最合适的。这选择了dataType (例如前面例子中的short ),然后我将选择的dataType赋给了我的c#代码中的一个变量。(实际上我正在读取一个二进制文件,我必须选择读取的字节存储在一个变量中,该变量必须具有16/32/64位整数中的dataType选项(如short,int,long),这应该是由组合框选择的)。你能帮我做一下吗?非常感谢(如果我的逻辑不起作用,而你有其他选择,请告诉我完整的细节,因为我只是一个初学者)。再次感谢
发布于 2014-04-03 21:28:23
你可以从下面的代码示例中获得想法:
var selectedDatatype = "String";
var valueToConvert = 1;
var convertedValue = Convert.ChangeType(valueToConvert, Type.GetType("System." + selectedDatatype));下拉列表注意:请确保下拉列表中填充的项属于System 。因此您应该使用Int64而不是long
https://stackoverflow.com/questions/22838653
复制相似问题