我问一条c# wpf强制类型转换的问题

问题描述

我问一条c# wpf强制类型转换的问题

ComboBoxItem at = (ComboBoxItem)combobox1.SelectedItem;
在调试时提示错误,说无法将类型为“System.Int32”的对象强制转换为类型“System.Windows.Controls.ComboBoxItem”,请问这是什么意思?我看网上要读取combobox的选中的项的值是这样写的,请问这个问题如何解决?

解决方案

这个错误应该不是指这个地方的,可能是你代码别的地方哪里也有不对的

这里不会报错,但如果你在combobox1的Item赋值时给的不是ComboBoxItem对象的话,你得到的值不会对,at 会是null

正确的取得SelectedItem对应的ComboxItem的方式是:ComboBoxItem container = combobox1.ItemContainerGenerator.ContainerFromItem(combobox1.SelectedItem) as ComboBoxItem;

时间: 2024-10-01 13:29:21

我问一条c# wpf强制类型转换的问题的相关文章

强制类型转换和多态的问题

问题描述 多态:父类:A,子类:bAa=newb();a.方法;强制类型转换:ba=newb();(A)a.方法:项目中一个例子父类:formBase(基窗体)子类:基于父类的各个子窗体Formfrm=this.ActiveMdiChild;fromBase(frm).方法();想问一下,通过强制类型转换,把子类转换为父类,然后调用方法实现多态,和正常的多态,有区别吗? 解决方案 解决方案二:转为父类,执行的就是父类的方法了,这样转型很危险,如果父类不存在子类的方法,就会出错解决方案三:引用1楼

实用技巧 Java类型转换与强制类型转换

技巧|转换 如果你以前有编程经验,那么你已经知道把一种类型的值赋给另外类型的一个变量是相当常见的.如果这2种类型是兼容的,那么Java 将自动地进行转换.例如,把int 类型的值赋给long 类型的变量,总是可行的.然而,不是所有的类型都是兼容的,因此,不是所有的类型转换都是可以隐式实现的.例如,没有将double 型转换为byte 型的定义.幸好,获得不兼容的类型之间的转换仍然是可能的.要达到这个目的,你必须使用一个强制类型转换,它能完成两个不兼容的类型之间的显式变换.让我们看看自动类型转换和

php foreach 参数强制类型转换的问题

所以,为了防止这样的信息出现,我使用foreach的时候,都会把参数进行强制类型转换,形势如下: foreach((array)$arr as $key => $value); 这样做一直相安无事,就在前几天,突然出现了问题.我强制类型转换以后不能正常的调用object的方法了. 复制代码 代码如下: <?php class service implements Iterator{ function __construct($service_define,$filter=null){ $thi

C#中的AS、IS运算符和强制类型转换简介

as和强制转换之间最大的区别就在于如何处理用户自定义的转换.操作符 as和 is 都只检查被转换对象的运行时类型,并不执行其他的操作.如果被转换对象的运行时类型既不是所转换的目标类型,也不是其派生类型,那么转型将告失败.但是强制转型则会使用转换操作符来执行转型操作,这包括任何内建的数值转换(如:long转int). 一般情况我们应该先考虑使用as进行类型转换,然后再考虑使用is,最后才考虑使用强制转换. 如果你使用as来转换数据,那么用is来做检测是不必要的.只用检测返回类型是否为null就行了

别让强制类型转换偷走性能

本次主题:强制类型转换性能的影响 SQL跟踪过程中发现一些表结构的DEFAULT值和SQL语句存在字段类型不一致的现象. 虽然业务逻辑没有出错,但却造成了索引失效或者增加了优化的复杂度.其中表结构DEFAULT值不正确影响更加重大,因为他影响了很多关联的SQL语句, 问题一:表结构DEFAULT值类型错误 尴尬:已有业务数据量很大,是转换表的DEFAULT值呢还是用转换类型的函数索引优化? 示例:同样是CHAR(1)类型,有的DEFAULT值是0,有的是'0' create table STAT

struct-c# 在一个实现了隐式转换的结构体进行强制类型转换时报错

问题描述 c# 在一个实现了隐式转换的结构体进行强制类型转换时报错 50C 如题,我有一个结构体,类似这样: public struct AInt{ private int _a; public int ToInt() { reurn _a; } public static implicit operator int(AInt value) { return value.ToInt(); } public static implicit operator AInt(int value) { _a

浅谈PHP强制类型转换,慎用!_php技巧

PHP是一门弱类型的语言.这是它的优势和特点,但是有的时候你又不得不对类型进行相应的转换. 这个时候问题就来了.因为很多情况下,你会发现转换类型之后得到的数据和预期的值相差老大一截. 这里我以强制转换为整形作为例子. 看下面的代码,可以说你绝对不可能说出正确的答案.echo (int) 123.999999999999999; echo (int)   -1.999999999999999;echo (int)   -1.9999999999999999; echo (int)   -0.999

《Java 7程序设计入门经典》一2.13 使用强制类型转换

2.13 使用强制类型转换 尽管自动类型转换很有用,但是由于它们只能用于兼容类型间扩大范围的转换,它们也不能满足所有的编程需要.对于其他情况,只能运用强制类型转换.强制类型转换(cast)是告诉编译器将一种类型转换为另一种类型.所以,它需要显式类型转换.强制类型转换具有以下一般形式: (target-type) expression 这里,target-type指定特定表达式转化到何种目标类型.例如,如果想把表达式x/y的类型转换为int类型,可以写成: 这里,尽管变量x和y都是double类型

对话框-求问一条java.lang.NULLPointerExcption的问题

问题描述 求问一条java.lang.NULLPointerExcption的问题 import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View.*; import android.widget.*; import android.view.View; import android.app.AlertDialog; import android.a