|
Which Timer? There are three of them.
Though, you're most likely talking about the one in the ToolBox. All you do is drag it onto your form, then write code in it's Tick event.
Somewhere in your code, you need to set the interval to tell the Timer how often to fire the Tick event, in milliseconds. Then you set it's Enabled proeprty to start to start the Timer.
|
|
|
|
|
I am visually inheriting a form.
The base form has a MyBase.Load event.
The child form has a Me.Load event do both of the get executed and if so is this the way I should be doing this?
The MyBase.Load event needs to always be executed but there are also things that need to happen that are specific to the child forms this is the reason for the Me.Load.
I also am wondering why I cannot change the Me.Text property on the child form without doing it in code.
If I write Me.Text = "foo" in the Me.Load event it works but if I try to set the Text property in the designer it give me a object not set to an instance of the object error.
Thank you for your time.
Humble Programmer
|
|
|
|
|
Just a word fo caution: The forms designer doesn't work well with inherited forms.
To answer your first question, no, only the Me.Load event get's fired. You have to explicitly call the MyBase.Load event from your Me.Load with
MyBase.Load(sender, e)
Exactly when you do that depends on your implementation. You can do it as the first line in your Me.load handler, somewhere in the middle, or as the last line in your event handler.
|
|
|
|
|
I am seeing that it is not working well. Are there people who are successfully using it that you know of?
I am very interested in using the visual design because in my case I have a reporting application that has about 300forms in it and they are not exactly the same but about 200 of them are very, very similar. What I would like to do is to design a base form with all of the standard stuff on it and then in my inherited form extend it to include a few other things.
For instance my base form will have a grid and a header and on some of the child forms I will also need a radio selection.
Is there a different way that I am not aware of for handling multiple forms like this without duplicating the forms and or code?
Humble Programmer
|
|
|
|
|
I've only had to do it once, and only on a few forms. Instead of drowning in "workarounds", I just created the based functionality I needed in a couple of user controls (header and footer) and dropped them on each form that I needed. That made things go much smoother...
|
|
|
|
|
Dave Kreskowiak wrote: Just a word fo caution: The forms designer doesn't work well with inherited forms.
I use it all the time, hadn't had to much problems with it, some minor things that needed tweaking but turned out to be bad programming on my part .
What are the problems you'v encountered with it? So I can avoid it if possible.
Dave Kreskowiak wrote: To answer your first question, no, only the Me.Load event get's fired. You have to explicitly call the MyBase.Load event from your Me.Load with
Depends on whether the child form has the load event. If that isn't present the parents load event will be called if it is present the child from has to call it like you said.
|
|
|
|
|
programmer_vb.net_c++ wrote: I also am wondering why I cannot change the Me.Text property on the child form without doing it in code.
If I write Me.Text = "foo" in the Me.Load event it works but if I try to set the Text property in the designer it give me a object not set to an instance of the object error.
How exactly do you have your child form set up? because I use inherited forms a lot and never encountered this problem.
Which version of VS?
Do you override the text property in the parent form?
Do you get errors opening the designer view of the form?
What I have noticed (don't know if its specifically because of inherited forms or not) is that you sometimes have to close the designer view and reopen it to get it to display correctly, this is most common after a run off the project while the designer view of the form is active. (You'll get empty screens/ errors that make no sense/ ...)
|
|
|
|
|
This is some of what I got. It was a few years (?) ago, because I only write an app like this every 4 or 5 years. The last time I tried it was under VS2003.
|
|
|
|
|
Dave Kreskowiak wrote: VS2003
And they still haven't fixed it
Well for me it hasn't been such a big problem more like an irritation, I just have to remember to have code displayed when running a project and all is well then .
|
|
|
|
|
I started with a base form designed the labels print, cancel etc two grids that do the same thing on alot of the forms.
I am using Visual Studio 2008 3.5
I am unsure what you mean by override the text property in the parent form, is that something I can do in the designer or do I need to modify the generated code...
I was getting an error in opening the design of the form but resolved that by checking to see if I was in design mode before letting some of my routines run from the load.
Although I have fix the errors that I was getting in the designer now I am not getting errors when I add to the child form new controls they just disappear.
Humble Programmer
|
|
|
|
|
programmer_vb.net_c++ wrote: I am unsure what you mean by override the text property in the parent form, is that something I can do in the designer or do I need to modify the generated code...
In the parent form:
Public Overrides Property Text() As String
Get
Return MyBase.Text 'change this
End Get
Set(ByVal value As String)
MyBase.Text = value 'change this
End Set
End Property
If you do that (and change the lines indicate) you override the text property.
programmer_vb.net_c++ wrote: Although I have fix the errors that I was getting in the designer now I am not getting errors when I add to the child form new controls they just disappear.
This is really weird behavior, never had that happen to me.
I would take the following steps in finding out what happens:
-Close all open windows (code/design windows)
-Clean solution
-Rebuild solution
-restart VS
--> test if it works now
if not:
-create new project
-import parent form
--> test if it works now
if not:
-create new project
-create (simple) parent form (start with a blank one, and then add the controls you want/need)
--> test if it works now
If it works on the last step, my guess would be you have a reference doing something strange. I know its far fetched but I had some very weird behavior with a previous (very bad) component we used.
Let me know if you find a solution or not, in the mean while I'll go tru my early notes and see if I didn't have something similar in the past.
|
|
|
|
|
I am using
If DateSelectionRadioButton.Checked Then
transactionDataView.RowFilter = String.Format("TranDate >= '{0}' AND TranDate < '{1}'", FromDateDateTimePicker.Value, ToDateDateTimePicker.Value.Add(New TimeSpan(23, 59, 59)))
End If
to set a rowfilter to a dataview via two datetimepickers. However, if TranDate is the same for both the start and end date dates no rows are displayed.
How can I correct this please?
|
|
|
|
|
If the dates are the same, your expression cannot ever evaluate to True.
TransDate >= someDate AND TransData < sameDate
will always evaluate to False if the dates are the same. Shouldn't the second expression be "<="??
|
|
|
|
|
Consider an integer-scenario and you'll see why this happens;
TranInt >= 1 AND TranInt < 1
That will evaluate to 'false', won't it? There are multiple solutions, with the easiest being this;
TranInt >= 1 AND TranInt <= 1
Alternatively you could add one day to the "until"-date, or add the time of day;
TranDate >= dd/MM/yyyy 00:00 and TranData < dd/MM/yyyy 23:59
Enjoy
I are troll
|
|
|
|
|
In my posting you will see that I had tried using
ToDateDateTimePicker.Value.Add(New TimeSpan(23, 59, 59)
in my code. I have also tried the
TranDate >= AND TranDate <=
technique without success
|
|
|
|
|
In that case, debugging starts
If DateSelectionRadioButton.Checked Then
Dim startDate As DateTime = FromDateDateTimePicker.Value;
Dim endDate As DateTime = ToDateDateTimePicker.Value;
Dim myRowFilter As String = String.Format _
("TranDate >= '{0}' AND TranDate <= '{1}'", startDate, endDate);
transactionDataView.RowFilter = myRowFilter;
End If
Can you verify that you get records when myRowFilter is empty? And please copy the myRowFilter-string here?
I are troll
|
|
|
|
|
I found that the answer was to use the formatting function of the String.Format to ensure the start date was <date> 00:00:00 and the end date was <date> 23:59:59.
Many thanks to all of those who offered advice.
|
|
|
|
|
Hello,
I have developed the project. Now i need to generate the report and print it. Now i m using data grid view for report. Is the datagrid view good for report. If it is not good then which one is good for report. also i have to print that report. if grid view is good then tell me how to print that grid view. Please reply as soon as possible.
Thanks & Regards,
Mohamed Safi Samsudeen
|
|
|
|
|
You must stop saying words like "PLease reply as soon as Possible"
We dont work for you.
Another thing is that before you post something in a Forum you must first make a reaserch yourself and if you cant find anything on google then youi can come and ask, remember we will go to google and see if its real that you did not find any results.
see what google showed me
http://www.google.co.za/search?hl=en&q=Printing+in+a+Gridview&meta=[^]
Do not do this again
Vuyiswa Maseko,
Few companies that installed computers to reduce the employment of clerks have realized their expectations.... They now need more and more expensive clerks even though they call them "Developers" or "Programmers."
C#/VB.NET/ASP.NET/SQL7/2000/2005/2008
http://www.vuyiswamaseko.tiyaneProperties.co.za
vuyiswa@its.co.za
www.ITS.co.za
|
|
|
|
|
It totally depends. If you need more formatted output then you can use reporting tools like Crystal Reports, Reporting Services, ActiveReports, etc.
DatagridView printing [^] [^]
|
|
|
|
|
I have Collections.Generic.List of objects so:
Date Reference NetAmount TaxAmount PaidAmount
01/01/2009 0000209 100.00 0.00 100.00
01/03/2009 0000212 120.00 0.00 120.00
01/01/2009 0000209 120.00 0.00 120.00
01/05/2009 0000221 105.00 0.00 105.00
I want to create another Collections.Generic.List but with the items grouped on the Reference field and fields NetAmount, TaxAmount and PaidAmount summed to give:
Date Reference NetAmount TaxAmount PaidAmount
01/01/2009 0000209 220.00 0.00 220.00
01/03/2009 0000212 120.00 0.00 120.00
01/05/2009 0000221 105.00 0.00 105.00
Can I do this with LINQ or some other way please?
(As there may be another way of doing this, other than LINQ, I ddin't post this is the LINQ section of the forum. Apologies if it is misposted)
|
|
|
|
|
|
Is there a .Net function which will create a new instance of an object with all of the object's data but not just copy the reference to the original object? What I need to do is copy an object and alter the data in the copied object without altering the original object.
I have read about the MemberwiseClone() function, but the objects I wish to copy (user defined objects) don't seem to support this method.
Any help is appreciated.
|
|
|
|
|
Nevermind, think I have found the answer by implementing the ICloneable interface. However, if anyone has any other ideas then great, let me have em!
|
|
|
|
|
Different ways fo cloning[^]
Every approach has their advantage/disadvantage. Take your pick
Edit: Fixed the link
modified on Wednesday, February 18, 2009 9:41 AM
|
|
|
|