Casting An Object Through An Interface (.NET 3.5)?
May 14, 2010
I have an object that inherits from an interface. I can create and return the following:
Dim o As IRequest
o = New Request
Return o
This works fine. Now I want to return a List(Of Requests), so I try the following:
Dim o As List(Of IRequest)
o = New List(Of Request)
Return o
The error below is being given on o = New List(Of Request)
System.Collections.Generic.List(Of MyObjects.Request)' cannot be converted to System.Collections.Generic.List(Of MyInterfaces.IRequest)'.Consider using 'System.Collections.Generic.IEnumerable(Of MyInterfaces.IRequest)'
View 2 Replies
ADVERTISEMENT
Jan 12, 2011
I have an Entity class which Implements IWeightable:
Public Interface IWeightable
Property WeightState As WeightState
End Interface
I have a WeightCalculator class:
Public Class WeightsCalculator
Public Sub New(...)
..
End Sub
Why can I not do wc.Calculate(entities)? I receive:
Unable to cast object of type
'System.Collections.Generic.List1[mynameSpace.Entity]'
to type
'System.Collections.Generic.IList1[myNamespace.IWeightable]'.
If Entity implements IWeightable why is this not possible?
View 2 Replies
Feb 28, 2012
i have the following code which walks through an Excel file and this works fine note that the following line does work well (folder is being set earlier in the code)
[Code]...
View 1 Replies
Sep 30, 2009
I've got a project called Service.Inside the project, i've got 2 windows classes.ClassA is the main windows class which opens up when I run the program.On ClassA, I've got a button which, when I click it, opens up ClassB which is the other windows class. Inside the button's eventhandler (click), I've got a string which contains the name of ClassB's class ie "ClassB". I will probably get this from a table. Is it possible to initiate the object ClassB without using if statments to check what the type of object is. In the code below, i've managed to create a o of type object, but i need to new it with the ClassB
vb.net Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
[Code]...
View 7 Replies
Mar 23, 2011
I have two custom objects.On of them inherits the other one, appends few more properties and methods, ovverides some other.When I try to cast the Parnet Object to Child I receive an error that it could`nt be done.
View 1 Replies
Feb 18, 2010
Okay, so I have a Generic IList of custom objects that I want to use as a datasource for a repeater.
Dim productRows As IList(Of MyCustomObject)()
'fill list with data
rptResults.DataSource = productRows
[code]......
View 1 Replies
Jun 17, 2009
Here is a test program I wrote to explore a facet of object casting ...
Module Module1
Sub Main()
Dim class1 As MyBaseClass = New MyBaseClass()
Dim class2 As MyInheritedClass = New MyInheritedClass()
Dim class3 As MyBaseClass = Nothing
[Code] .....
The problem comes with the TryCast statement on class3. My intention is that class3 remains as a baseclass, but when the TryCast is applied, class3 morphs itself into an Inherited class which is not what I wanted. So is there a gap in my OOP/VB.NET knowledge and this action is legitimate or should class3 still be regarded as a base class?
View 6 Replies
May 31, 2010
Unable to cast object of type 'System.Windows.Forms.ToolStripButton' to type 'System.Windows.Forms.ToolStripMenuItem'.This is the error, when I click on the bookmark(When I add the bookmark, It's a non-clickable menu item; the next time i debug it, it becomes a clickable url(button)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
...
Call minginimi()
End Sub
[code]....
View 2 Replies
Apr 21, 2010
I'm trying to make a .dll that contains a lot of basic functionality that a program can use. Currently i am trying to use interfaces to make a lot of this functionallity independend of the program using it but i hit a snag. The Basic idea is that a programmer will create his own object using the interface discribed in my .DLL file. Then implements those functions as he likes. He can then instanciate a controller (found in the same DLL) and sends his custom object implementing the interface to that Controller. The controller can then be started and will take over all the work. I do not know what type of object is send to the controller and idealy i want to program it in such a fashion that i shouldn't care as long as the object send implements that interface.In code I am trying to achieve the following: (quite simplyfied)
.Dll:
Code:
Public Interface MyInterface '<----Decleration of the interfaceFunction GetData() As Integer
Function SetData(Data As Integer)
end interface
[code]....
this propperly. I know that the second i set the interface adaptor in the Controller VS comes nagging that it can not be converted to a "MyInterface" Class. Obviously i am doing something wrong. I can change the datatype that the controller expects to the "MyController" type but that would completely ruin the whole idea of flexibillity. I am hoping someone sees what i am trying to do and can point out where i made the thinking error.
View 6 Replies
Jul 5, 2010
I've got a piece of code in a project (MyProject) that contains early bound object from a referenced assembly (We'll call it CommonAssembly):
Dim myObject As CommonAssembly.MyEarlyBoundType
now I have another assembly that is dynamically loaded because it is not present in all projects:
Dim myLateBoundObject As Object = AppDomain.CurrentDomain.CreateInstanceAndUnwrap("Utils", "Utils.MyLateBoundType")
MyLateBoundType derives from CommonAssembly.MyEarlyBoundType, and I want to cast myObject to myLateBoundObject and then programmatically invoke the additional
[Code].....
View 1 Replies
Mar 10, 2010
I've got 3 forms that have exactly the same functions, so I decided to create an interface.
public Interface IExample
public sub Add()
Public sub Edit()
[code]....
At this point, objfrmExample is now instantiated, even though I've not done a "objfrmExpample = new [what-goes-here?] " and I'm curious as to why.I could possibly guess that because you cannot instantiate an interface variable, then vb.net automatically creates an instance. But thats just a guess. The question is , what is meant by declaring a variable of type Interface, and how does it work?
View 2 Replies
Mar 4, 2009
I have an interface that describes an specialized list in my application...
[Code]....
Is there a way to make an interface serializable, or am I going to have to convert each of my objects into a concrete class implementing the interface, and then return that class?
View 2 Replies
May 19, 2009
I am working in VB.net and have a Class, Foo, that implements an interface, IBar.I have a List of Foo's, but I need to pass a list of IBar's into a function, but I keep getting casting errors, even when I use DirectCast.My code is [code]MainWorks works, but it would be really annoying and inefficient to have to do that everywhere I want to call this function.
View 4 Replies
Oct 13, 2011
I'm working on learning VB.Net after having programmed in VB6, VBA, and VBScript for several years. I'm assuming that something that begins with the letter I is an interface. However, a lot of places I see people/documentation referring to what appears to be class objects that begin with I. I guess I'm under the impression that Interfaces are contracts that class objects can agree to.
[Code]...
View 5 Replies
Sep 1, 2009
I have an object parameter and I need to check if the object implements a specified interface in vb.net. How to test this?
View 2 Replies
Sep 16, 2010
What is the most commonly used convention (in C# and VB) to name object, when I want to emphesize that it is an instance of class that implements some interface. Like here:
//is iDisp correct name?
protected void Dispose(IDisposable iDisp)
{
iDisp.Dispose();
Console.WriteLine("Disposed");
}
View 4 Replies
Oct 19, 2010
what is the difference between declaring a variable in this way
ByVal
List As IEnumerable as
a parametre in a function
Dim
[Code]....
View 1 Replies
Sep 2, 2010
I have an interface, for the sake of argument called MyInterface.I Have a Control Class, lets name it "Parent" that implements MyInterface.I have another Control Class that inherits Parent, called "Child".I have a final Control Class lets call it "Container", that accepts dragging the parent onto it.[code]I want to modify this not to only accept Parent, but to accept ANYthing that implements MyInterface. I can't figure out how the heck to get it to work. Even more confusing, if I drag the child onto Container, with the code as it is above(checking to see if a Parent was dropped), GetDataPresent always returns false. I would figure it would work, since Child inherited parent.[code]But it bombs and GetDataPresent returns false whether I dragged a Parent or a Child. I'm being an idiot somewhere..
View 1 Replies
Jul 1, 2010
I have a base class called Schedule and three classes inherited: DailySchedule, WeeklySchedule, MontlySchedule. Now I would like to build a form in which users can modify the schedule and I have to compile different parts of it depending on whether the schedule is daily, weekly or monthly. Then I want to have back the schedule modified. Which object can I use on the form?
I thought to implement on the base class an interface iSchedule and to pass the interface to the form, but when I'm on the form constructor how can I cast the interface to the correct class? e.g. in the form constructor I will have a sched variable as iSchedule, I can see that, for example, is a DailySchedule from an interface property called Type. But how can I cast the interface to an instance of the DailySchedule class and to access to its members?
View 1 Replies
Jun 5, 2011
I use the IsAssignableFrom-method to check if the datasource of a bindingsource-object implements an interface i defined. The check happens inside the property-setter like this:
Private WithEvents _BindingSource As BindingSource
''' <summary>
''' BindingSource containing datasource in which search is executed.
''' </summary>
''' <remarks>Datasource must implement ISearchAndFindable.</remarks>
<Description("The BindingSource to search within."), Category("Data")> _
Public Property BindingSource() As BindingSource
[Code] .....
View 4 Replies
Feb 1, 2011
I have to begin saying that I'm working with Visual Basic. The problem is that I have a Entity Framework object and I want to indicate that this object implements a interface, for example:
Public Interface ICatalog
Property created_at() As Date
Property id() As Long
End Interface
Those properties are allready in the object. In c# I've done this just by declaring a partial class of the object and indicates that implements that interface, but in basic is not working, I supouse that is because of the language sintaxis used to declare that a property is implementing some property of the interface, for example:Public Property created_at() As Date Implements ICatalog.created_at
View 2 Replies
Sep 27, 2010
This is another question about my galaga like game. I want the enemies to move to a random spot one pixel away at each tick of a timer. How would I go about doing this?
View 6 Replies
Sep 6, 2010
Lets say I have function returns an object and that object has 10 properties. for example
myStudent.ID
myStudent.Name
myStudent.Surname
[code].....
View 10 Replies
Jun 28, 2011
Does anybody know why I get the error 'that method is not available on that object' when I try to interface with Word 10? Our software works fine with Word 7 and previous
View 1 Replies
May 23, 2011
How can I raise an event from another class which implements an interface that contains an event?
Public Interface IMyEvent
Event MyEvent()
End Interface
[Code].....
Note the comment - that code doesn't work. How can I raise an event like this, if it's contained within another class through an interface?
View 1 Replies
Dec 8, 2004
How can i change the backcolor property of an object to an rgb value?
i do as it says in the help:
Code:
dim ink as long
ink = rgb(233,126,190)
lblInkPot.BackColor = ink
but i get the error "Value of type "Long" cannot be converted to "system.drawing.color"", but it specifically tells you in help to use "long"...
View 4 Replies
Dec 28, 2009
I tried to create a lineshape and make it visible when a timer ticks. Also tried to set everything that would matter when creating it(border colors and thickness etc)
But still, I got no results.
Code:
Dim line = New Microsoft.VisualBasic.PowerPacks.LineShape(CX, CY, ccx, ccy)
line.Parent = New Microsoft.VisualBasic.PowerPacks.ShapeContainer()
line.Enabled = True
[Code]....
View 1 Replies
Apr 19, 2011
I'm new to generics and am having some issues when using with interfaces.I'm developing with VS2008 - .NET 3.5 Ultimately, I'd like to create an interface that inherits the IList(Of T) interface and add a function definition to the derived interface that adds a new element of type T to the list and returns the index of the newly added item.
I have everything figured out but am stuck on a casting issue. If I execute the following line of code at runtime:CType(New clsObjectFactoryList(Of clsIDNamePair), ifObjectFactoryList(Of ifIDNamePair))
View 9 Replies
Jan 6, 2011
I have an interface ITest with a method GetResult(). I have a class Test which implements ITest and thereby defines private method GetResult().
Next I create an instance of Test in a different class. The code is as below:
Module NewClass
Public Sub New()
Dim i As ITest = New Test()
[Code]....
I am migrating existing code from VB 6 to VB.NET and hence I'm not supposed to change the access modifier of GetResult. Leaving it Private will throw InvalidCastException Unable to cast object of type 'System.Object' to type 'ITest'
Object type variable o is used in many places and hence I don't want to change that. And yes, Test implements ITest.GetMember with a different name.
View 3 Replies
Jun 1, 2012
I am building a software which will be used to create a remote desktop connection. However I'm getting this error:
Unable to cast COM object of type 'System.__ComObject' to interface type 'MSTSCLib.IMsTscNonScriptable'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{C1E6743A-41C1-4A74-832A-0DD06C1C7A0E}' failed
due to the following error: Δεν υποστηρίζεται τέτοια διασύνδεση (Exception from HRESULT: 0x80004002 E_NOINTERFACE)).
[Code]...
View 1 Replies