WinForms - Editing Custom Readonly Collection In Property Grid
Feb 19, 2010
I have a custom collection, lets says COL, that derives from ObjectModel.Collection. I have my own collection editor that works fine when a property, of type COL, is Read and Write enabled. However, if I change the property to ReadOnly, the open editor button stops showing in the property grid. As a test, I override my custom editor with the CollectionEditor, and that worked fine. So, my question is, what check is the property grid making, that CollectionEditor passes but my collection editor fails?
View 2 Replies
ADVERTISEMENT
Mar 3, 2010
I have a class that has a readonly collection property - Its a list of extender providers that have been applied to the control.I've implemented a simple property descriptor for the collection so that the property can be expanded in the property grid to examine each entry.
When I select an extender provider and set it to false, I remove it from the collection. The GetProperties method of the type converter is requeried and the property grid refreshes.However, when I set an extender provider to true, and thus add it to the collection, GetProperties is not requeried.
Somehow, the property grid is making a distinction between adding to and removing from the collection. Or alternativly, its refreshing when an extender provider is added, but not when one is removed.
[Code]...
View 1 Replies
Jul 6, 2010
When using the Property Grid and exposing a color property from an object you get this kind of interface for color selection: There are tabs for System and Web, those are fine, but the Custom tab (shown) which seems to be a subset of the standard windows color picker, seems to be hobbled. How do you create custom colors? How do you get custom colors into those white color boxes provided?
View 1 Replies
Jul 11, 2011
I have an ASPX Custom Control which is supposed to load it's properties into an internal collection (defined with PersistenceMode.InnerProperty). Here's the ASPX
<cc:CustomControl runat="server">
<Queries>
<cc:QueryTypeOne ... />
[code]...
View 1 Replies
Mar 11, 2010
(I've answered the question below with a hack. I'm fairly confident in it unless MS change the way that codedom serializers the designer code.)ETA2:I've worked out what is going on. I wondered why sometimes it would work and not others. It boils down to the name that I give to the internal property and the collection.If I rename the property 'Annoyance' to 'WTF', it will serialize correctly because 'WTF' is, alphabetically, after the name of the collection - 'InternalAnger'.It looks like the serializer is creating instances of objects alphabetically and needs my internal property to be created by the time it comes to create the collection.I can fix this with a rename, but that's a hack and I fear that writing a custom serializer is a big job - which I've never done before.ETA: Jesus, I'm sick of this. This problem was specifically about persisting an interface collection but now on further testing it doesn't work for a normal collection. Here's some even simpler code:
Public Class Anger
End Class
Public Class MyButton
[code].....
View 4 Replies
Feb 15, 2010
I had a strange problem editing a class in the property grid whereby the property grid would refresh incorrectly.I managed to reduce the problem down to a class with just two properties. I've included the code at the end to ease explanation.It basically boils down to a class with two properties. The first of which is expandable (a font)The class itself is expandable and also implements the CreateInstance method in the type converter.To see the problem, expand the font, edit, say 'Bold', and tab away. Two problems happen:
(1) The second property jumps up and ends up in the expanded font property.
(2) The '-' sign of the expanded font changes to a '+'.
The problem goes away by attaching ResfreshProperties(RefreshProperties.All) to the class. That's great, but I'd like to understand how it fixed the problem. I've had a look in reflector and can't find any examples of RefreshProperties being attached at the class level.
[code]...
View 1 Replies
Jul 6, 2009
During a code review I looked at set of repository classes (in vb.net). I am used to seeing these repository classes full of functions that return collections (among other things) of your domain objects. However, this repository had 1 public property and 1 private variable that looked something like this:
Private _item as Collection (of Customer)
Public Item as Collection (of Customer)
Get...
Set...
In the "Get", there is code that gets a the Customers from the DAL and loads it in the private _item. What would the benefits be in using a property (customerRepository.Item) instead of plain old function (customerRepository.GetAllCustomers)? The "Property" way looks odd to me but odd doesn't always mean wrong.
View 3 Replies
Jun 12, 2012
I am using a PropertyGrid control to edit my class properties and I am trying to set certain properties read-only depending on other property settings.This is the code of my class:
Imports System.ComponentModel
Imports System.Reflection
Public Class PropertyClass[code].....
This is the code I am using to edit the values:
Dim c As New PropertyClass
PropertyGrid1.SelectedObject = c
The problem is that when I set SomeProperty to True, nothing happens and when I then set it to False again it sets all properties Read-Only.
View 1 Replies
Jun 19, 2009
I have several custom classes in a VB.NET (VS2008) project which are related to each other through generic list collections. The lower tier classes refer directly to some of the parent classes (to make it easier to refer backwards up the chain). My question is, is it possible to add the reference to the parent class when the item is added to a collection, when that collection is a property?
Below is some sampling of code to illustrate.
Public Class FlexServer
Private m_FlexLicenses As List(Of FlexLicense)
Private m_Modules As List(Of FlexModule)
Public Property FlexLicenses() As List(Of FlexLicense)
[code] .....
In the code above I have the FlexServer class which refers has two lists as properties, one for FlexLicense and one for Modules. The FlexLicense class has a property to refer back to the FlexServer class that "owns" it. In order to update this property in code, I have to add the FlexLicense to the FlexServer.FlexLicenses list AND set the FlexLicense.FlexServer property. What I am looking for is, is there a way (in the property definition or wherever) to both add the item to the list and alter it at the same time?
View 1 Replies
Jun 10, 2011
Is there a way for implementers of an interface where a ReadOnly property is defined to make it a complete Read/Write Property ?
Imagine I define an interface to provide a ReadOnly Property (i.e., just a getter for a given value) :
Interface SomeInterface
'the interface only say that implementers must provide a value for reading
ReadOnly Property PublicProperty As String
End Interface
This means implementers must commit to providing a value. But I would like a given implementer to also allow setting that value. In my head, this would mean providing the Property's setter as part of the implementation, doing something like this :
Public Property PublicProperty As String Implements SomeInterface.PublicProperty
Get
Return _myProperty
[code]....
View 5 Replies
Mar 23, 2011
Conceptually it seems like a derived class should be able to override a readonly property with a read write property. Why isn't this possible?
[code]...
View 4 Replies
Feb 22, 2011
When it comes to creating trees or collections, sometimes I want child elements to have a reference to the parent. Obviously it is important that the parent and child references to each other remain in sync. It seems natural to have code in the parent "addchild" and "removechild" methods that updates the child's parent reference.t also, the reference to the parent should probably be readonly, so it can only be changed at the appropriate time.Two examples in .Net that I've seen are the TreeNode and datagridview controls
View 11 Replies
Jul 28, 2010
Is there a efficient way to provide an Enumarable<SomeType> or a collection that implements INotifyCollectionChanged but that can only be changed from the inside of the providing class.
The following example shows what I mean, but has the disadvantage that the caller can cast the IEnumerable<SomeType> back and then manipulate my internal collection, what I really would dislike:
[Code]...
View 2 Replies
Jan 26, 2012
I Like .NET automatic properties, in C# it so easy to declare readonly property by declaring its set section as private like this:
public String Name{ get; private set; }
But when I tried that in VB.NET I was shocked that it is not supported as mentioned here and I have to write it as follows:
Private _Name as String
Public ReadOnly Property Name as String
Get
[Code].....
What the difference between these declarations in VB.NET, which one is preferred and Why?
Which one will affect compile time, runtime or performance at all?
View 3 Replies
Feb 8, 2010
I have been researching for a couple of days now and to no avail. Does Anyone know how to make a custom collection that take advantage of the collection editor? I would like to be able to have 3 Color Values, 1 Boolean and 1 String.
View 15 Replies
Mar 10, 2012
I have a Windows Form VS2010 .NET 4 project with a standard DataGridView bound to a datasource on a form.
The grid has a text column that I want to be a point and edit at the character clicked to. Like normal textbox/editors when you click on the character you want to adjust. If possible I would also like to use the UP/DOWN keys to move between rows but would like the cursor to move to the same character position obviously in the same column without selecting the entire text.
I have tried a few things:
DataGridView1.ClearSelection()
DataGridView1.BeginEdit(False)
The BeginEdit just puts the cursor at the end of the text, which means another click to point to the character position for editing.
I know a Commercial grid like DevExpress defaults to editing in which you can click to the correct character position with one click but obviously costs money.
I have tried in the DataGridView1_EditingControlShowing event
If TypeOf e.Control Is System.Windows.Forms.DataGridViewTextBoxEditingControl Then
Dim tb As TextBox = e.Control
tb.SelectionStart = 5
[Code]....
I am just trying to remove the two or three clicks to get to the character position that needs adjustment.
View 1 Replies
Oct 20, 2009
I have a user control and I'd like to give it a custom property named ReadOnly. I get "Keyword is not valid as an identifier", as it thinks I'm writing a ReadOnly Property named something.
so really I can call mine 'Read_Only', but I'm just curious if there's an easy way to get the other name in there, since then my control will be similar to the visual controls that have ReadOnly in the designer.
View 5 Replies
May 31, 2009
As I understood , The property grid is given an object which it can manipulate by extracting its Properties using reflections.
My problem is that I have a set of Parameters that is determined during run-time , thus I can't staticly compose a class with properties to represent this set.
I have two idea in mind to solve this problem but both are complex and will probably consume lot of time , infact i will say they are not practical under my time constraints. One is to use Reflection Emit in order to define a class dynamically and the other is to dynamiclly build a C# source file and then compile it using CodeDom.
Can Property grid behave in a different manner( other then extracting the Properties of an object using reflections ) that can suite my problem?
I want to say that the reason I went to the property grid from the begining was its ability to provide realy nice Data Retrieval UI for common types.For color you autometically get a palette , For dataTime you automatically have a nice calender. I would like to get those things automatically If possible.
View 1 Replies
Oct 19, 2010
Private cs As New SqlConnection("Data Source=ANKIT-PC;Initial Catalog=mrks_analysis;Integrated Security=True")
Private da As New SqlDataAdapter("select * from sbs", cs)
[Code].....
i used the above mentioned command to get data from db to my datagrid.
Currently the complete grid is editable.
i want that the Sno field to become non editable + and the rest rows i want a combobox from which user selects the data and which gets stored in db.
View 5 Replies
Jan 31, 2011
is it possible (and how) to make a readonly automatic property in VB 2010?
Public Class Foo
Public Property Value As Integer
Public Sub New()
[code]....
problem is that users can write to the property.
View 2 Replies
Mar 9, 2012
It seems that VB.NET and C# readonly keyword have some differences... Say, a ReadOnly property in C# can be assigned in some conditions, but in VB.NET - never?
View 2 Replies
Nov 16, 2011
How would one invoke a readonly property?
ListView1.SelectedIndices.Count
View 2 Replies
Jul 10, 2009
THis is a line of code i have, it's a code to go at the bottom of a document and the title of the question is the error it has, how do i change the 'Chars' to not be read only? I can only guess 'Chars' is a character.
pagecode(1) ="01274-6759q-DDD"
If you're not living on the edge, you're taking up too much room
View 1 Replies
Jun 11, 2011
i have this code to build datagridview column. I will fill this coulmn with the data from another column (I have done it) But now, I want it so that the table property READONLY: TRUE and the column TOTAL_PRICE to have $#.00 format.
Public Class columnLoader
Public Sub New(ByVal system As String, ByVal quantity As Integer, ByVal description As String, ByVal totalPrice As Double)
[Code].....
View 1 Replies
Jun 12, 2012
If I have VB declaration like this Public ReadOnly Property Document() As XmlDocument, what is its C# equivalent?
View 1 Replies
Mar 18, 2009
I have a listbox with several list items added. I want that as user click on an item, I should be able to show its property. This should change for different items. For example (hypothetical) : Listbox has numbers 1 - 10. Now when I select 1 I should be able to set property - Name, Lastname, Colour, Age.
When I select 2 I should be able to set - Age, Hair Colour (clr shows), Weight, Date. When I select 3 then - City (combo box drop down), Country, Age only. This way value changes for diff items. One way is to put them in property grid and show them. Though this looks nice but adding/removing items in that is not easy. You need to have a class that refer that to prop grid. Do I have to code for each classes for all values in listbox or is there an easier way to manage items in property grid. If you think prop grid is not the right tool for such an activity then can you suggest something else.
View 13 Replies
Jun 7, 2011
I have created a read-only property(name) in class1. How can I use this name property in class2?
Public Class Class1
ReadOnly Property name() As String
Get[code].....
Can I directly carry this name variable value into class2?
View 3 Replies
Aug 15, 2009
I am using a Micrsoft Web Browser Control (i.e. the AxWebBrowser NOT the standard web browser). The only way I can declare the variable for it is as follows:
Dim wb1 As New AxSHDocVw.AxWebBrowser However I cannot then do the following: wb1.Name "WebBr1" It says the Property Name is ReadOnly
View 6 Replies
Aug 21, 2009
It seems that in the following example, TestProperty() and TestDouble() are functionally equivalent. Is the case? I usually use Property/Get when I have a single line "Return Variable_" type of "function", and Function when I have a more involved thing going on. Is that reasonable?
vb
Public Class TestClass
Public ReadOnly Property TestProperty() As Double
[code].....
View 6 Replies
Aug 6, 2009
how can i solve this error in my code i have access database and i need to connect to it and that was done but when i was trying to add new record it gives me the below error Error 1 Property 'Item' is 'ReadOnly'.
cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data.mdb;")
rs.Open("sec", cn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
[Code]....
View 4 Replies