Using A Control Name As Property To Another Control?
Apr 2, 2010
I Use a picturebox with a series of concentric circles and radial lines to move other controls on the form depending on the direction and distance from the center. I call it navigator and I would like to create a custom control inheriting from picturebox. How do I use the other control name or object as a property for my control? My code is very simple, but creating a control with the picture and center defined already would be easy to drop on any form.
This is it:
Public Class Form1
Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
[Code].....
In this case PictureBox2 is the control I want to move, but I would like to be able to move other controls with changing the control(or object) property of PictureBox1(Navigator1.Control).
I would like to be able to set Control visual properties such as color, boarder, flat style, etc. on the base class of the control so that as I add new instances of the control, each instance inherits the visual properties of the base. I have tried using Application Settings but it appears as though I need to reference an application setting manually each time I add the control to a form. This is a Windows Form question.
I'm trying to make a program with transparent labels over pictureboxes and when I set the label Parent to the PictureBox the position of the label changes.
i frequently have troubles with the dock property. it seems that either the order of creation or adding to the parent control determines whether or not a control's dock property supersedes another's. e.g. a control with the dockstyle fill will overlap with another docked control on the same parent. does anyone know what the rules are to determine how docking will behave; particularly in dynamically created GUIs?
Is there a way to bind the text property of a control to an expression? I have a user control that I add to a FlowLayoutPanel. You can see I have 4 controls in the FlowLayoutPanel below. The first control is a LinkLabel and the other three are my user controls which are numbered 1, 2, & 3. I'd like to bind the label that shows the 1, 2, or 3 to the user controls index within the FlowLayoutPanel.
If I happen to remove the 2nd user control I want the 3rd user control to now display 2. I could use the FlowLayoutPanel ControlAdded or ControlRemoved events, but wanted to see if I could do some binding first.
If I need access to the value of a user control's property BEFORE PreRender, would I need to base the custom control off of one of the preexisting data controls (repeater, listview,etc.)?One of my user controls features a gridview control that is configured based on the user control's properties on which it resides. Several of the key properties alter the SQL Statement for the underlying recordsource. I'm now in a situation where the property that sets the WHERE statement for the SQL Statement needs to tied to a value in the user control's parent FormView. Think of the formview as displaying a customer detail record. The user control takes the customer's account number and then displays data from a related table such as Customer Contact Names. Since the gridview is created before the control's prerender event, working within the prerender event doesn't seem efficient.
Here's my situation: I have a control with motion graphics (for the sake of simplicity, a 'video player' control) in my project. Think of a PictureBox with constantly-changing images. In front of this will sit a second control (such as a second PictureBox of the same dimensions). The topmost PictureBox will be drawn to in its Paint event.
I need to draw very few elements, and the bottom control is updated much more frequently than I need for this drawing. So these elements are drawn to the topmost control. Think of a news broadcast, where they have live video in the background, with a news channel logo, news ticker, and sometimes gradient visible in front.
I'm trying to create that 'foreground' control, and the closest I believe I have gotten so far is the following:
The 'Opacity' property in the code above is a sort of "scaling factor." The image drawn to the top control may, in different parts of the image, have any alpha value from full transparent to a full 255. This 'Opacity' property is applied to the entire image being drawn, scaling the alpha values of each pixel.
I have created a custom class, which contains a panel and a label on it. I added to this class a pcaption property, which holds the label text. This property is browsable and I can change its value.But when I drag the custom control to the form and change the pcaption property, it has no effect. Even the <Defaultvalue> has no effect. Why?
Here is the class code:
Imports System.ComponentModel Public Class mypanel Inherits Windows.Forms.Panel Private panelcaption As String
I have a number of pages which implement the same interface:[code]The function doSomethingToTextBox takes a textBox item as a parameter and performs some action on it.I know the textBox is contained on every page which implements my interface, and that it has the same name on each page.My question is: how can I declare the textBox as an interface property? This will remove the need to pass the textBox as a parameter to doSomethingToTextBox()I must also add that I'm currently accessing the TextBox using get/set methods defined as part of the interface - I don't want to have to implement these methods for each page as they are exactly the same on each page.
I am using ASP.NET XML control and on Page Load event I am updating its DocumentContent property but the problem is data isn't being shown. The control is empty on page load.
xmlDIMenuSource.DocumentContent = "<Menu><Parent ID="1" Name="Order" SortOrder="1"><Child ID="21" Name="Create an Order" URL="../Order/OrderCapturingv4.aspx?Action=new" SortOrder="1" /><Child ID="32" Name="Import a Style" URL="../Order/OrderCapturingv4.aspx?Action=import" SortOrder="2" /></Menu>";
I am working with dev ex controls and on a menu bar item there isnt a property for setting the button to Visible or not Not Visible. Can you add properties like this to pre made controls? If so how would you do it?
I want to get a control's property from a BackgroundWorker in my form:
foreach (ListViewItem i in ListView.CheckedItems) { //error: Cross-thread operation not valid: Control 'ListView' accessed from a thread other than the thread it was created on. //do something with i }
I have created a form dynamically. On this from I have added two user controls. The first user control(Mylabel) is inherated from label and the second one(Mybotton) from button. On my Label control I have added a method as follows:
Public ReadOnly Property ctlStatus() Get Return (m_Selected) End Get
I am developing a custom control with VB9, and I want to add a Property Name TextFileName this property need to use OpenFileDialog, which type I can use when I define this property?
for example another property I use is EnterFocusColor and its type is System.Drawing.Color so when the user select the property it opens the ColorSelectionDialog Hany M. El Tarhony
I created one web user control with property named "ReadonlyField" with boolean datatype. I am able to use in my web pages and now i wanted to add a description to that property so that i dont need to explain each time to my team member what is that property's intention.
I got following snippet in c# but didnt find any equivalent in vb.net and also not sure whether it will work or not.
[Description("My Description")] public int MyIntProperty { get {..}
This sets the includetime property correctly.In my backend code I also do this on page_load:
txtWhen.SelectedDateTime = now
When I step through with the debugger, I see that the property gets set, BUT when the page_load of the control itself loads, the property value is reset to nothing!
The page_load of the control:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load lbltime.Visible = IncludeTime If SelectedDateTime().CompareTo(Nothing) > 0 Then
I have a sql data source and I have a really long string of SQL. I want to put linebreaks in my sql but Visual Studio doesn't seem to like the linebreaks. How would I put in line breaks?
What is the best way to bind a property to a control so that when the property value is changed, the control's bound property changes with it.So if I have a property "FirstName" which I want to bind to a textbox "txtFirstName" text value. If I change FirstName to "Stack" the txtFirstName.Text also changes to "Stack".
I just wanted to confirm couple of things. I) Code snippet: cmb1.Datasource= dt; cmb1.Valuemember = "value"; Does the control rendering happens 2 time for the control, 1 more time extra because of the value member getting changed after data source assigned. Is this so? II) How can I trace these re-populations in C#? I just wanted to debug and see and confirm?
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
I am relatively new to programming and have managed so far with google and a lot of patience! I am having a problem naming timer contols at runtime. This is what I am trying to achieve.
1. I connect to my dataset and to my first record
2. I create a loop for the recordset
3. I create various objects on a form and name them using the info in the dataset
I also need to create timers and name them using the first field of my dataset. It needs to be dynamic as its database driven. There could be as many as 100 timers at any one point.
I am inheriting my own DataGridView (say MyDataGridView) from the standard DataGridView control. What I want is that certain properties of MyDataGridView should have a different default value than what its base have. For example, AllowUserToAddRows, AllowUserToDeleteRows, AllowUserToResizeRows properties should have the default values of False; so that when I drag MyDataGridView into a form in the IDE, the default values shown in the properties grid should be False. Later on, if I want to change them to True from the grid, they will be set accordingly.
I have an Inherited Control with a Property that can be set in the designer. There's some code in the Set procedure to make sure it's set appropriately. However when I build or run the project that property is changed, I am assuming it's the sanity check code in the Set procedure that's causing it to be changed along with some VS beahviour. Here's the code: