错误地解决了引用

时间:2012-09-24 07:34:03

标签: .net vb.net itextsharp

我正在尝试使用库iTextSharp来生成PDF到我们公司的旧项目,一切都很好,除了将Imports添加到使用RadioButtonList的表单时,它将此RadioButtonList视为一个iTextSharp对象不是System.Web.UI.WebControls并且给我以下错误

重载解析失败,因为无法使用以下参数调用可访问的“添加”:

'Public Sub Add(item As System.Web.UI.WebControls.ListItem)': Value of type 'iTextSharp.text.ListItem' cannot be converted to 'System.Web.UI.WebControls.ListItem'.
'Public Sub Add(item As String)': Value of type 'iTextSharp.text.ListItem' cannot be converted to 'String'

此控件定义如下:

<asp:RadioButtonList ID="rblChargeOrNot" runat="server" AutoPostBack="True" RepeatDirection="Horizontal" Width="60%"></asp:RadioButtonList>

相同
 <asp:DropDownList ID="ddlnumber" runat="server"></asp:DropDownList>

正在使用的技术是vb.net framework 3.5

1 个答案:

答案 0 :(得分:3)

不,它将您宣称为ListItem的内容视为iTestSharp.text.ListItem而不是System.Web.UI.WebControls.ListItem

您没有显示构建此ListItem对象的代码 - 但您需要完全限定名称,或者考虑更改此类的Import以使其不会假设您在声明此对象时表示iTextSharp.text.ListItem

即。你可能有这样的代码:

Import System
Import System.Web.UI
Import iTextSharp.text

...

Dim li as ListItem

请注意,iTextSharp.text命名空间已导入,但System.Web.UI.WebControls不是。 VB决定ListItem对象属于iTextSharp.text。如果您已导入System.Web.UI.WebControls,则会收到有关该声明不明确的错误消息。您可以使用以下方法修复它:

Dim li as System.Web.UI.WebControls.ListItem