VS 2010 Disable Default Class Members And Methods?
Mar 13, 2011
Is there a way to disable the default members and methods inherited from the base class?
I made some classes in which elements like "Equals" and "ReferenceEquals" are confusing or I don't want them to show, or I have other methods providing similar functionality with different names and I don't want to override and use the default name.
I am not sure how clear my question is by the title, but I am trying to make Class methods instead of Instance methods in Visual Basic that way I don't have to waste memory and code creating temporary objects to execute methods that don't need instance variables.
I am not sure if you can do that in VB but I know you can in Objective-C by using either a "+" or "-" sign in front of the method declaration. And in C++ (at least I think, I can't remember) you put the static keyword or const keyword in front of the function.How would I do this in VB if it is possible? Or should I just make a separate set of functions that are not members of a class?
This is a bit of a continuation from a previous post for which AtmaWeapon was very informative.
Problem: A parent class has a sub class with various properties. A property of the parent class is a List(of T) with T = the sub class The issue is how to store data in the sub class of the instantiated parent
Some example code (hopefully formatted correctly):
Code: '=========== Class Definitions ============= Public Class courseClass Public Class timeTableClass
I have a base class which must be overriden. This base class sits in one dll shared by all. The derived classes will each be in their own dll such that the addition of a new derived class can be done by distributing a new dll. The set of dlls, and therefore the set of derived classes, will be discovered by the main program on startup. That's all pretty straightforward. The problem is that the main program needs to be able to query a database to figure out which type of derived class it needs, then create a class of that type. Naturally, it can't know which types will be available ahead of time because even I don't know that. The program has to be dynamically extensible.The obvious way to do this is to have an interface in the dll that is implemented by a class with a default constructor. The sole purpose of that class would be to return an object of the type (one of the derived types) defined in that dll. The derived types can't really be this class, because they can't have a default constructor since the base class doesn't have a default constructor, and the derived class can't make up the arguments that the base class constructor needs.
So basically, each dll that houses a derived class would also house a simple class that implemented an interface for the sole purpose of creating that particular derived class. The main program would examine the dll to find a class that implemented the interface, and once it found one, it could ask it what type of class it created, or it could ask it to create an instance of that class. It seems like there ought to be an easier way to dynamically add new classes to the project. It seems like the derived class ought to be able to tell the main project what type it was. This could be done, except that the derived class would have to exist before any of its methods could be called unless the methods were shared. Since you can't have a shared method in an interface, the interface itself would make no sense at that point, in which case I would need to discover whether the class in the dll derived from the base class in the second dll, just to figure out whether or not I wanted to create it. That's getting convoluted by now, so I guess I'll leave it there. The basic point is that the base class is known to the main program from a common dll. The number and types of derived classes can't be known at this time, so the program has to be able to discover them dynamically. Each derived class will sit in its own dll (or there could be more than one in a dll), and has to be discovered, and instances created, as needed, by the main program.
I usually use which is free, works a little too well, it's obfuscating the code that passes between my scripting class and the other classes, so after obfuscating the app, the scripting functions no longer work.However I found another obfuscator called Skater lite which is a free edition, it will only obfuscate private classes and members, so what I would like to do if possible is make most of my classes private and their members (except for the scripting class, which should allow it to work properly after being obfuscated), and somehow still use them globally, declaring an instance of the class doesn't seem to work, I'm not even sure it's possible and I know little about the scope of private classes, so anyone got any ideas or workarounds?
I was looking on the interweb to see if there were any good examples on how to initialize shared members within a class while still initializing instance variables.[code]How do I initialize both instance and shared members without re-initializing the shared members every time an object is created from a class?
I have a Data class whichs hold 70 class members to save me a hole lot time and effort not having to type all the properties for hand I'm wondering if there is a simple tool i VS2010 that I can use to auotgenerat the "property stubbs"
I have an application that reads data from a SQL query into a list corresponding to the rows of the query. So, I have something like this:[code]What I'd like to know is if I should be using a class (as above) or a structure, and what the difference may be in terms of memory or runtime, if any.
This might seem like a silly question, even for a newbie but I can't access the members of a class from a user control. I am developing a shopping cart application in vb 2008. inside the app_data folder i have a folder name BusinessObjects which contains a class called Catalog. This is the code for this class:
I am attempting to share a sub menu among several different parts of an application so that it is consistent (not wanting to copy/paste.) I thought it would be simple. I am doing something like this:
limit the default events, properties and methods exposed from a UserControl so it only displays to the developer the new events etc that I code myself.What i mean is I have created a UserControl with a panel and 5 buttons, written 1 Public Eventonly at this stage, I have placed an instance of the control on a form in a new project, but in the drop down menu that comes up after say (myUserControl1.), there is a massive list of options, I don't want those to appear.
I have a Base Class, called primitive Graphics. derived from this class are several different types of graphics, squares, rectangles, lines, etc. I am storing those graphics in an object that inherits collectionbase. This causes a problem because I cannot access any of the members in the derived class when they are added to the collection. Here is the default property for my primitivecollection class
[Code]...
My current workaround is to just put all of the public members in the base class, however this is starting to look ugly as I add more derived classes that need members available to the derived class only
I was looking on the interweb to see if there were any good examples on how to initialize shared members within a class while still initializing instance variables. I did find an expression that might fit to the answer:
[code]...
How do I initialize both instance and shared members without re-initializing the shared members every time an object is created from a class? Thanks!
my question is simple. How do i add methods to the standard DataGridView control of VB.NET
I want to add some methods of my own to the class, but i tried inheritance and i get errors. What are the techniques out there to extend native classes in vb net
In this project I am making a grade calculator; I am modifying an existing code I have to have the following characteristics: I need to modify the DetermineGrade method so that it accepts the maximum number of points that can be earned on both tests (currently, the max number of points is 200: 100 points per test). For an A grade, the student must earn at least 90% of the total number of points. For a B, the student must earn at least 80%. For a C, at least 70%. For a D, at least 60%. If they earn less than 60% of the total points, then grade is F. Here is the exisint code I have for the DetermineGrade method specifically:
Public Sub DetermineGrade() Dim intTotal As Integer intTotal = _intScore1 + _intScore2
I am trying to add shared members in derived classes and use that values in base classes...
I have base
class DBLayer public shared function GetDetail(byval UIN as integer) dim StrSql = string.format("select * from {0} where uin = {1}", tablename, uin) end function end class
[Code]..
currently there is error using the tablename variable of derived class in base class but i want to use it i dun know other techniques if other solutions are better then u can post it or u can say how can i make it work? confused...
I have a class definition that I've seen other define properties that return collections of objects.
Public Property GetAllAdults() as Adults End Property I made the argument that this should be a method in the class, because it doesn't define an attribute of the class, and could not be extended with parameters. Is/Are there reasons why this should be defined as a property vs. a function?
I have a Public Class called "ClientConnection". Inside that class, I have a Public ReadOnly Property called "FileTransfers(ByVal TransferID)". The property returns an object of the class "FileTransfer". All methods in FileTransfer are set to public.
VS is able to discover the methods inside the parent class "ClientConnection". How would I expose the methods inside the sub-class "FileTransfer" that is returned by the property "FileTransfers(ByVal TransferID)"?
Public Class ClientConnection 'irreverent code removed Public ReadOnly Property FileTransfers(ByVal TransferID As Integer)
I have a database table called Job. I have mapped this table using LINQ to SQL so that I have a class called Job.
What I want to do is add some methods to the Job class. The Job class is defined in the LINQ to SQL classes .dbml file. So, in order to add methods, or anything else to the Job class what should I do?
Should I create a partial class named Job and define the methods in there? Will that then get mixed in properly? Not sure how to proceed on this one.
Do I have to instantiate description every time for different method? Or should I use static? Here's how I'm doing this now: What is the best way of handling this kind of situations. it seems that I repeat this line:Dim description As BLLDescription = New BLLDescription() without any good reasn.
Protected Sub Button8_Click(sender As Object, e As System.EventArgs) Handles Button8.Click Dim description As BLLDescription = New BLLDescription()
I have a function that 2 derived classes use, but the third doesn't, would it make sense to just leave it in the base class, even though one of the 3 derived classes doesn't use it?The only way I could think of disallowing the third class is to basically create an intermediate class that is derived of the base, then the 2 that use the common function are derived off the second class.
Is it possible to prevent the 3rd class from using the function, while letting the two that are supposed to use it, use it?Does that just seem to go overboard, I mean as long as I don't "try" to call the function from the 3rd class, it shouldn't be a problem, I just was interested if there was a way to prevent it all together without a lot of hassle.
Is it possible to iterate through the properties and methods of a custom class, getting the details about those properties and methods in the process.[code]....
I have a database table called Job. I have mapped this table using LINQ to SQL so that I have a class called Job.What I want to do is add some methods to the Job class. The Job class is defined in the LINQ to SQL classes .dbml file. So, in order to add methods, or anything else to the Job class what should I do?Should I create a partial class named Job and define the methods in there? Will that then get mixed in properly? Not sure how to proceed on this one.
I have a database table called Job. I have mapped this table using LINQ to SQL so that I have a class called Job.What I want to do is add some methods to the Job class. The Job class is defined in the LINQ to SQL classes .dbml file. So, in order to add methods, or anything else to the Job class what should I do?Should I create a partial class named Job and define the methods in there? Will that then get mixed in properly? Not sure how to proceed on this one.