I have a legacy COM-component with an interface declaring a property like this (IDL notation):
[Code]...
This interface is implemented in a calling application written in VB6 like this:
[Code]...
Everyting works fine until I try to do the same in VB.Net. VB.Net refuses to compile code where a parameter of a property is passed ByRef. MSDN says VB.Net doesn't allow such parameters. Is there any way I could implement such a property in VB.Net?
I did create a XDateTime class that is able to handle inaccurate date and time. This class has all the CType operators required to convert to and from a string and it has been fully tested during the last months.
I want to make a generic EventArgs sub class that has a write-only property which, when updated by the code that is handling the event, will also update the byref parameter of the constructor of the class.
The code I have so far doesn't work. How do I get the property "Item" to update the "item" constructor parameter so I can retrieve the value that was set?
public class EventArgsSet<T> : EventArgs { public EventArgsSet(ref T item) {
I'm using SharpZipLib to compress files. The library is wrapped in a plugin interface, in a separate DLL. I pass the plugin dll a ByRef parameter to keep track of the compression progress.SharpZipLib, while compressing, will periodically call a delegate sub passed when launching the compression. I can't figure out how to update the ByRef parameter when the delegate is called. If I try to assign the ByRef variable in the body of a lamba expression, I get a 'ByRef' parameter '<parametername>' cannot be used in a lambda expression error.
How can I get the name of the object that was passed byref into a method?
Example:
Dim myobject as object sub mymethod(byref o as object) debug.print(o.[RealName!!!!]) end sub
[code]....
I'm using this for logging. I use one method multiple times and it would be nice to log the name of the variable that I passed to it. Since I'm passing it byref, I should be able to get this name, right?This would give you the parameter name in the method and it's type, but not the name of the variable that was passed byref.
using system.reflection Dim mb As MethodBase = MethodInfo.GetCurrentMethod() For Each pi As ParameterInfo In mb.GetParameters()
[code]....
If you put that in "mymethod" above you'd get "o" and "Object".
I have a class OrderManager, that takes a parameter of type LocalFuturesList on construction. Now.. It doesn't seem to matter if I use ByRef or ByVal here.. It still references the parent class instance of it. It also doesn't seem to matter if I type New or omit it.. Probably also because it's just an address reference. But why is it like this? And what type of objects "acts" in this way? Further I find that if I change the object in the parent class by deserializing from a file (with my method call shown), then suddenly this reference is broken in some way, so the OrderManager instance now holds Nothing I believe.If my observations are correct I see two challenges:
1. How to pass a list NOT by reference?
2. How to maintain a list reference through deserialization? [code]
I have a 3rd party (c#) class that raises an event. on accsing this event i want to copy the image property to a queue.
Dim myQ as queue Private Sub imageprocessor_NewImage() handles camera.NewImage myQ.Enqueue(imageprocessor.currentimage) End Sub
But when I view myQ at a later date it tells me the parameters of the images are not valid.Is it adding them by reference?i would have through adding an object to a queue was byval. how can i enforce this?
I would like to databind to a property that requires arguments.
I thought about defining custom columns and cells because the parameters that the property requires are available from the within the object bound to the row, but I'm having trouble materialising this idea.
As an additional problem, that I think leads on from this, I have also created a custom column and cell for the datagridview that takes the implementation of an interface during it's construction. I have added this column to the datagrid view programmatically (passing the Interface implementation to the column constructor). I've overridden the paint method which evaluates a property from the Interface implantation using arguments from the other rows in the column, but it doesn't seem to call the paint method at all. Even on DataGridView.Refresh(). Essentially I would like this column to also update, evaluate a property from the interface implentation using arguments from the underlying object bound to the row and print this number in the cell.
The reason for this second problem is so that I can implement the interface many different times and just at a column dynamically to display it's evaluation.
Is it accepted to have a method parameter named the same as a property? At least it gives no error, even if in the same letter-case.. How does the compiler distinguish? does it always prioritize the local parameter?
In silverlight, can you bind to a property that contains parameter? For example, the following doesnt seem to work. Am I missing something or is this not possible?
C# private System.Collections.Generic.Dictionary<string, string> ValuesField = new System.Collections.Generic.Dictionary<string, string>();
I'm currently using a combo box to select one of many alternatives. From 5 alternatives only 1 works, when i click on any other it gives me the following error:"Cannot bind to the property or column 'xyz' on the DataSource.Parameter name: dataMember" Why is this error caused? What are the possible solutions to this error?
Argument not specified for parameter 'index' of 'public readonly default property chars(index as integer)as char'. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
EXCEPTION : Cannot bind to the property or column Site on the DataSource.{10}Parameter name: dataMember
details I am connecting to an Access database and using .net 3.5 and writing the code in VB. In this database I have a table named Sites with a column named Site and when I try to use the line of code above I get the exception noted. I was under the impression that I could explicitly name the column that I need to use in my control (combo box).
I'm currently using a combo box in vb.net to select one of many alternatives. From 5 alternatives only 1 works, when i click on any other it gives me the following error:"Cannot bind to the property or column 'xyz' on the DataSource.Parameter name: dataMember" Why is this error caused?
[URL]..But I can't design a solution. Could anyone try to help me out here? I know there are some workarounds to be found, but either the links are dead (check above link) or it's writter in a language I still can't read. Here's my code.
I am coding a VB.NET application which heavily deals with a collection type. See the code below:
[Code]....
I have to type the above line for so many times. If I changed the collection type, then I have to make the change for all the instances. So if there is a way to use "a typedef equivalent", then I can get rid of all these problems. I tried with imports, but it is only for namespaces and it can't be used for classes.
Note: I am using VB 2008, windows XP. The application type is windows forms(VB). EDIT: I made some tries based on code_gray's below answer. This is the first try.
I'm trying to integrate with an API that requires the "Date" header in a web request. As you may well know, .NET has removed the ability to append or even display a default Date header in your request, so I was wondering about a workaround.Here's the catch: you can't use TCPClients because I don't have "permissions" on my server for such a thing as sockets. Is there some way to "cheat" the system to fake a date header or to trick it into posting a Date header? Or should I just give up on this API?
I know that there is no DESIGN, DESIGN_MODE, DESIGN_TIME, etc preprocessor directive value. However, I need something that can do the trick. I can't use a normal If statement, because in my case I need to change the inherited class so that the control renders properly at design time. If not, I'll receive an exception due to the fact that the inherited class is an abstract class.Here's what I'm looking to accomplish:
Partial Class MyCustomControl #If DesignMode Then Inherits UserControl #Else Inherits WidgetControl #End If
I'm downloading a bunch of files from a URI but when they get big, I get an utOfMemoryException. I thought at first it was MemoryStream error but I'm pretty sure now that the error is rooted in the declaration of an array of Bytes that's too large. (Half a gig is fine, 1.7 gig is not.)
what's a Class, and Object, a Method, a property and thins like that, but I have this doubt:Let's supppose I have a class "Laundry" this class has (just for this example) 3 propierties:
1.- laundryID 2.- Name 3.- Washers
Id and Name are "primitive" types or simple types (integer and string), but Washers, represent a list of object of type "Washer", that has 3 properties:
1.- washerID 2.- laundryID 3.- capacity 4.- brand
All of them (for this example) simple/primitives types (integer,string,string).So this my dilemma, it is correct to have a constructor like this (VB .net)
public sub new(ByVal laundryID as integer) '' Here I'll query for the data of the Laundry on DB '' After that I will query for every washer that belongs to this laundry
[code]....
And inside of that constructor query for all the washers that belongs to the laundry with id=laundryID parameter, and create objects of type "Washer" and add them to the list of Laundry ?I'm not sure If I explain myself, any comment I'll be really grateful, in less words, what's the correct approach (or good practices) to work with class/objects that has properties which are complex (other class/objects).I usually work with ADO.net probably ADO/LINQ/Entity solve this thins in an transparent way, but if they do it I don't really know it.
Note: I'm familiar with VB.net, C#, PHP, so if you prefer explain/help me using examples with its syntax, it's ok
It's kinda overkill (i7, 8GB, SDD, W7 x64) for what I actually need but it is supposed to last for a few years.For maintenance issues I had to install Visual Studio 2005 and it turns out that "Edit and Continue" wasn't working . I found a thread here HTML Code:[URL] in which I read that E&C is not supported in 64-bit OS.
I'm trying to make a label transparent. When I set the BackColor to transparent, all it does it take the color of the form it's sitting on, i.e. It's not truly transparent. I've googled it and found this in another thread (from a MSFT MVP)".NET controls do not support true transparency. You can set their BackColor to Transparent (in some but not all cases) and the parent control will show through, but only the parent control. If there is some other control behind that is not the parent it will not show through. That's because the control is not truly transparent. It basically copies its parent in the area behind it and uses that as its background, but that doesn't include sibling controls that may be behind it as well." To me, this is completely unacceptable. Why even include the transparency option when all it does is set the control's backcolor to the form color? I'm trying to add a label over a progress bar to give my user some feedback (because the Visual Studio progress bar doesn't support text, which is also a horrible design shortfall by the way), and have yet to find a way around this.
Below is the called method: Friend Sub SplitOU2(ByVal inDN As String, ByRef OUDN As Object, ByRef Organisation As Object, ByRef VerksamhetTyp As Object) By doing this I can skip to declare the in this example "useless" variable Dim VerksamhetTyp as Object = "".