Converting Types Between .Net And VB6?
Jan 7, 2010Converting types between .Net and VB6?
View 2 RepliesConverting types between .Net and VB6?
View 2 RepliesI'm studying for the MCTS exam 70-536 and have come across the following question:Given the following Visual Basic code sample, which interface must the custom class MyClass implement?
Dim a As MyClass, b As Boolean
a = 42
' Convert using ToBoolean.
b = Convert.ToBoolean(a)
Console.WriteLine("a = {0}, b = {1}", a.ToString, b.ToString)
Before even looking at the possible answers, I can't get past WHY on earth would we be converting the number 42 to a Boolean value?? I tried this and as I suspected it did NOT compile! Is this a trick question or am I missing something? I realized that in order for the code to work, I would need to implement one of the interfaces shown in the multiple choices. STILL, would there EVER be a purpose for this particular conversion?
I'm trying to wrap up a program I wrote in VB.NET and quick. I have a device that I am connected to through a serial port (COM4). It sent me 1056 binary bytes which I have stored in an array called newRecievedData. (see code below)
********** Start Code*********
Dim numberOfBytesToRead As Integer
numberOfBytesToRead = myComPort.BytesToRead
Dim newRecievedData(numberOfBytesToRead - 1) As Byte
[Code].....
I'm having a bit of an issue with this program I have been working on for my class. It's a future values calculator, that takes a single data type, decimal data type and a integer data type does the formula and then spits back out the Future value. What i'm having difficulty with is converting the string over.
Public Class Form1
'Define the Module level variables
Dim FutureValueInteger As Integer
[Code]....
I'm not sure if i titled this question properly or am asking it properly, but here goes.I've got serialized objects (in XML) stored in a database, along with a string/varchar indicating the type.
[Code]...
I am in the process of converting some c# code to that of VB.NET...I am running into error at the following
[Code]...
I have a class with a Property called 'Value' which is of type Object.Value can be of any type, a structure, a class, an array, IList etc.My problem is with the setter and determining whether the value has changed or not.This is simple enough for value types, but reference types and lists present a problem.For a class, would you assume that the Equals method has been implemented correctly, or just assume that the value has changed every time the setter is called?If I did assume it's changed, then perhaps I should assume it for value types as well, so that the behaviour is consistent.
View 2 RepliesI need to compare two dictionary values if the types stored are equal, this is what i have
if gettype(Args(key)) = gettype(argtypes(key)) then
'' do something
end if
[Code]....
my goal is to
1.Take an file(exe,dll,etc)
2.Convert it into hex
3.place that hex values in a stack
4.Execute the values inside the stack to its original form(i.e. take the elements out of stack and then convert it to a compile format)
Imports System.IO
Sub Main()
Dim fileName As String = "ABC.exe"
[code]....
I have: Dim nVar1 As Long?Dim nVar2 As Long?Dim nVarSum As Long?nVar1 = Nothing nVar2 = 5 nVarSum = nVar1 + nVar2 I would prefer the result to end with nVarSum being 5, instead of Nothing. I understand if you add something to an unknown value, you will end up with "somthing + unknown" or x+5 will always equal "x+5" not "5" because you are still carrying around that unknown "x". However, how can I effectively treat an unknown or Nothing as a zero for the purposes of addition in this case?(What is basically happening is that the end user is sending us a data file, this code parses that file and then sums together about 15 fields. If the user leaves those fields blank instead of assigning a zero to them, I need to treat it as if it was a zero for this one addition operation, but all the rest of the code needs to continue seeing it as a Nothing value since the user did not ACTUALLY submit zero... they submitted blank or nothing)
View 3 RepliesIn Delphi you can do something like this :
TArray = array[1..3] of byte;
where you can then declare
T2Array = array[1..3] of TArray
[code].....
C# and VB.NET comes with built in types that maps to the CLR types. Examples are: int (C#) and Integer (VB) maps to System.Int32, long (C#) and Long (VB) maps to System.Int64. What are the best practices for deciding when to use built in types or not to use them (using the System.* structs/classes instead)?
View 7 RepliesCan Nullable Types be used in VB.NET? If so, is it possible to have a Nullable Integer that I can use with a field that accepts NULL in SQL Server?
View 4 RepliesGota class i'm finishing up to hopefully have as a tutorial on here very soon about working with wndproc in a class for drive readings. Trying to build a simple select state ment for drives removed based off there hexvalue placment so far i've found &H1(Cd devices) and it appears &H0(Usb tho not found other devices to test yet)
[Code]...
I am trying to have different types of rectangles. I thought something like this would work, but Rectangle is not a class.
Public Class xRectangle
Inherits Rectangle
End Class
What I wanted this for was to remove a selection rectangle from an existing drawing. I have all of the objects to draw stored in a list and I am trying to remove the selection rectangle without removing the object it is covering.
I have a function that accepts a list as the parameter and creates a CSV from the passed list.Currently, the List parameter is of type String i.e.Public Function GenerateCSV(ByVal Source As List(Of String)) As String..My question is, is there a way I could modify the parameter such that it accepts a list of any known type i.e either string, integer etc instead of forcing it accept of type string as I have done above?
View 5 RepliesI'm converting an Access VBA app to VB.NET. It has dates defined as variants or objects to handle null values. I thought this would be a great chance to use the Nullable type. But I can't get it to work. Either it is inappropriate for what I am trying to use it for, or I am doing it wrong. Anyone know how to use it? Reader is a SqlDataReader.
[Code]...
I was hoping I didn't have to put a lot of If .. Null statements throughtout the code, but that is my only option unless someone has any other idea.
I am writing a vb.net application which calls a webservice method. The webservice method in question accept some 20 parameters, such as (string x, string y, string z.... Integer a, Integer b, Integer c).Its possible that any one of the integers (a b or c) is not purposefully set to a value. However, because Integer is a value type I cant set it to Nothing, thus I default it to -1 when the user has not selected a specific value for those integers. However, the webservice method wants me to pass it Null/Nothing when the user did not initialize those integers (not 0, or -1, it wants Nothing/Null).
How do I give the webservice what it wants short of multiple conditionals, with slightly different calls to the webservice (e.g. if integer a = -1 then call webservice with (x,y,z,Nothing,b,c) etc...)?
So I have a pretty large application. This app communicates with hardware using a RS422 protocol. Now I'm working on the same app, except it will be using TCP/IP to communicate with the hardware. So this is using different code to do this.But I don't want to write two different applications, because that is two apps I would have to keep updated both of them. The apps are the same exept for the way they communicate with the hardware. Now I can limit the change down to 1 form, all the other forms would stay the same.
View 5 RepliesI understand that different data types have different uses, String for text, Integer for numerical ect. However, if the Object type can be used for ALL types and supportive of everthign then why should i worry about using correct data types such as string and integer if i can just use "Object" for them all and it will work.I could do
Dim Test as Object = "John"
or i could do
Dim Test as String = "John"
They both do the same thing; there must be something very important im missing here but can only think of one thing that it could be; Memory Management.I think that by using a type such as object may take up more memory than using string?
I often use VBA to automate internet explorer and interact with web sites.I can find links on regular URLs I navigate to, fill in forms on them, etc.But I don't know what these types of windows are that come up or how to get a hold of them to click links on them or enter text in their forms if there is any. It comes up then grays out the screen it came from. It looks like its some java popup or something. I'm not interested in the site this is from, its just an example of one to show what I mean. I've been searching and looking but can't figure it out.
View 5 RepliesWhich parts of C# .NET framework are actually parts of the language? There are some features of C# that require specific type (the type has to implement System.IDisposable). Other features are based on patterns (any type that has something that looks like a method called Select() with the proper signature).What is the minimum set of types that C# requires from the library (the former case above)? How does that differ from other languages like VB.NET and F#?
View 1 RepliesPublic Function CastToT(Of T)(ByVal GenericType(Of Object) data) As GenericType(Of T)Return DirectCast(data, GenericType(Of T))End Function
The above clearly does not work. Is there any way to perform this cast if I know that all objects inside data are in fact of Type T?
I'm writing a program and currently have 4 lists called Palette1, Palette2, Palette3, Palette4.Each contain 15 list items of Color type.I was hoping to create an array of lists but have been unsuccessfull in doing so.[code]
View 6 RepliesI am building an ASP.NET application that needs dynamic tables. That's another issue that I've already posted about (and gotten a pretty good response!). Now, I'm running into another issue - I want to add new rows to my table, but given that I will have 10-12 tables on one page, each containing different objects in their rows (text boxes, check boxes, etc.) I need a way of simply generically adding a new row that has the same objects as the first row in the table. Here's my code:
Private Sub AddTableRow(ByRef originalTable As System.Web.UI.WebControls.Table)
Dim originalRow As System.Web.UI.WebControls.TableRow = originalTable.Rows(1)
Dim insertingRow As New System.Web.UI.WebControls.TableRow[code]......
Stepping through with a debugger, I see that this strategy is working - but the additional table row still doesn't appear...and still does when I do this statically.
I have gotten my application to open with an associated file type, but now I'm trying to figure out how to associate the file types to the app. I associated them on my PC manually by right clicking on a file and selecting "Open With.." and check-marking "Always use this application to open this file type".What I want to do, is have my program make itself the default application for a file type with the press of a button.If it makes it easier, I'm writing a text editor and want to give the users the option of making it the default text editor for .txt &/or .rtf files.
View 1 RepliesC#'s 'as' keyword will let you do this: int? input = value as int? Here's what I would assume the vb.net equivalent would be: Dim input As Integer? = TryCast(value, Integer?) There's an intellisense error in the TryCast stating the operand must be a reference type but Integer? is a value type.
Intellisense on Nullable(Of Integer) says 'Represents an object whose underlying type is a value type that can also be assigned null like a reference type.' It seems C#'s 'as' handles this like a reference type where TryCast doesn't have this built in. In VB10 I was able to take advantage of the new CTypeDynamic function to do the casting. Conversion.CTypeDynamic Method
Dim input As Integer? = CTypeDynamic(Of Integer?)(value)
Or:
Dim input As Integer? = CTypeDynamic(Value, GetType(Integer?))
There's a cost here as CTypeDynamic examines the type at runtime.
My question is what is the elegant way to handle this without CTypeDynamic?
Dim input As Integer? = TryCast(value, Integer?)There's an intellisense error in the TryCast stating the operand must be a reference type but Integer? is a value type.Intellisense on Nullable(Of Integer) says 'Represents an object whose underlying type is a value type that can also be assigned null like a reference type.'It seems C#'s 'as' handles this like a reference type where TryCast doesn't have this built in.
View 1 RepliesAre anonymous types slower than declarative types?
For example, does
Dim score as Double = CalculateScore()
run slower than
Dim score = CalculateScore()
Why use explicit typing if it's no slower?
i wonder if it's possible to define a variable/property of more than one type. Let's say i want a property TextWebControl that is a WebControl and also implements Web.UI.ITextControl(f.e. like a TextBox or Label). But i don't want to enforce that it is a TextBox or Label, but only one that inherits from WebControl and also implements ITextControl so that it also would work with controls added in future releases of .Net-Framework.
.Net-Framework 4.0
Edit: I have retagged the question and added VB.Net because it's my default language. Normally it's no problem for me to understand C# also, but i must admit that it's difficult to translate generic stuff to VB.Net without experiences and it's also better documentated in C# than in VB. So i would appreciate(and aceept) a working example of a VB.net generic type of ITextControl/WebControl.From Marc's answer i understand that i need a generic class. But how do i instantiate it in SomeClass? This won't compile:
Class SomeClass
Public Property info As InfoControl(Of WebControl, ITextControl)
End Class
Public Class InfoControl(Of T As {WebControl, ITextControl})
End Class