|
Hello Pete,
Pls find the details below.
ColumnName DataType Length Nullable
--------------------------------------------------------
ApprovedFlag int 4 no
ApprovedDateTime datetime 8 yes
ApprovedBy varchar 30 yes
LastModifiedBy varchar 30 yes
LastModifiedDateTime datetime 8 yes
|
|
|
|
|
Hmmm. Sorry, I can't see what's happening. What you could do, is attach the query explorer to the SQL Server instance, and see what SQL it's receiving. That would be what I would do.
|
|
|
|
|
Could you please let me know the steps to do this?
|
|
|
|
|
You can find out how to do this here[^].
|
|
|
|
|
Hello Pete,
I tried to debug the code in the server after installing Visual studio.
I'm getting the below error in Cell_formatting event in this line
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Used"
e.CellStyle.BackColor = Color.LightGreen
e.CellStyle.SelectionBackColor = Color.LightGreen
e.CellStyle.SelectionForeColor = Color.Black
ERROR:
An unhandled exception of type 'System.StackOverflowException' occurred in System.Windows.Forms.dll
{Unable to evaluate expression.}
I have made a check below, but it is partly working and not updating "Status" column and coloring,
If e.Value Is Nothing Then
Exit Sub
End If
Is there anyway i can mimic this issue?
Please help. I can also paste my Cell_formating code if you want to look at it.
|
|
|
|
|
Wait a second. You're changing the value of some text here in this event? I'm pretty sure that will trigger the event again - this would lead to a StackOverflowException .
|
|
|
|
|
Please let me know if there are any steps to overcome it.?
I will need to set the Color for "status" column.
|
|
|
|
|
When an event is called SomethingChanged, you expect it to fire only when Something gets a value different from the current one. However in WinForms some of those events will also fire when assigning the same value as the property already had, and that is one way to get StackOverflowException. The easiest way around is by explicitly testing yourself, as in:
...
if (Something!=theValueIWant) Something=theValueIWant;
...
}
And yes, those events carry the wrong name, should have been GotAssignedTo or something such.
|
|
|
|
|
If dgEditor.Columns(e.ColumnIndex).Name = "Status" Then
If dgEditor.Rows(e.RowIndex).Cells("Status").Value = "NEW" Then
'if already marked as new, leave it alone
If IsDBNull(dgEditor.Rows(e.RowIndex).Cells("CommonLineName").Value) Then
Else
If dgEditor.Rows(e.RowIndex).Cells("CommonLineName").Value <> "" Then
e.CellStyle.SelectionForeColor = Color.DarkGreen
e.CellStyle.ForeColor = Color.DarkGreen
e.CellStyle.BackColor = Color.Orange
e.CellStyle.SelectionBackColor = Color.Orange
End If
End If
Else
If dgEditor.Rows(e.RowIndex).Cells("UsedFlag").Value = 1 Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Used"
e.CellStyle.BackColor = Color.LightGreen
e.CellStyle.SelectionBackColor = Color.LightGreen
e.CellStyle.SelectionForeColor = Color.Black
Else
If dgEditor.Rows(e.RowIndex).Cells("ExpiredFlag").Value = 1 Then
If dgEditor.Rows(e.RowIndex).Cells("ApprovedFlag").Value = 1 Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "UnUsed" 'approved expired
e.CellStyle.BackColor = Color.LightGray
e.CellStyle.SelectionBackColor = Color.LightGray
Else
If dgEditor.Rows(e.RowIndex).Cells("RejectedFlag").Value = 1 Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Expired" 'Rejected expired
e.CellStyle.BackColor = Color.LightCoral
e.CellStyle.SelectionBackColor = Color.LightCoral
Else
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Expired" 'pure expired - never approved and never rejected
e.CellStyle.BackColor = Color.Gray
e.CellStyle.SelectionBackColor = Color.Gray
End If
End If
Else
If dgEditor.Rows(e.RowIndex).Cells("RejectedFlag").Value = 1 Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Rejected"
e.CellStyle.BackColor = Color.Red
e.CellStyle.SelectionBackColor = Color.Red
Else
If dgEditor.Rows(e.RowIndex).Cells("ApprovedFlag").Value = 1 Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Approved"
e.CellStyle.BackColor = Color.Green
e.CellStyle.SelectionBackColor = Color.Green
Else
If dgEditor.Rows(e.RowIndex).IsNewRow = True Then
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "NEW"
e.CellStyle.SelectionForeColor = Color.DarkGreen
e.CellStyle.ForeColor = Color.DarkGreen
e.CellStyle.BackColor = Color.HotPink
e.CellStyle.SelectionBackColor = Color.HotPink
Else
If dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Edited" Then
e.CellStyle.SelectionForeColor = Color.DarkGreen
e.CellStyle.ForeColor = Color.DarkGreen
e.CellStyle.BackColor = Color.HotPink
e.CellStyle.SelectionBackColor = Color.HotPink
Else
dgEditor.Rows(e.RowIndex).Cells("Status").Value = "Pending"
e.CellStyle.SelectionForeColor = Color.Black
e.CellStyle.BackColor = Color.Yellow
e.CellStyle.SelectionBackColor = Color.Yellow
End If
End If
End If
End If
End If
End If
End If
'Application.DoEvents()
End If
Above lines are in my Cell formatting event. I have commented out Application.DoEvents as it was causing some issue.
Could you please elaborate how i can proceed with
if (Something!=theValueIWant) Something=theValueIWant;
.That would be much helpful.
|
|
|
|
|
1.
Thank you for a bunch of code, unformatted code at that, where it is all about nested IFs and no visible indentation. There is no way to read and understand that as it stands. You should edit your message and apply PRE tags to the code.
2.
You should NOT be calling Application.DoEvents(). Not there, not anywhere. It is a very dangerous method, misunderstood by most everyone. If you think you need it, something is wrong with your code and adding it is bound to make things worse as it disturbs the natural flow of events. So remove it everywhere! And remove it completely, don't just turn it into a comment, as if there would still be some value left in it.
3.
If you are assigning new cell values in there, that will cause a new barrage of events being fired, which you probably don't want. You certainly don't want an avalanche of events (as a StackOverflow would result).
One way to handle it could be this:
Dim currentStatus as String = ... ' save the content of status cell
Dim newStatus as String = currentStatus
...
' lots of conditional code, which does not change the status cell;
' if a new status is required, store it in newStatus.
...
If newStatus <> currentStatus
' now store the new status in its cell (this will cause more events, however there
' will be only one round of them as you now test for an actual change)
Endif
|
|
|
|
|
Thanks Pete and Luc.
I'm done with the changes as you suggested.
|
|
|
|
|
Hi
modified 12-Apr-12 0:31am.
|
|
|
|
|
While that's a terrible shame, is this really the right forum? I would suggest that the GIT would be the appropriate place for this, as that's where you are most likely to find a number of people from Chennai.
|
|
|
|
|
Respected Sir/ Ma'am,
I wanted to ask that how to transfer a value of one textbox from one windows form to another??
Also plz provide me with your e-mail id, so that i can contact you easily and can send you attachments wherever necessary.....
Thank you.....
|
|
|
|
|
|
|
I've written a desktop app using C# WinForms and I'd like to try using ads to generate revenue. Ad libraries exist for mobile platforms but I haven't come across any which can be used for desktop applications. Do any exist? I looked into AdMob, and it looks like there was a point where there was a desktop SDK, but presently AdMob is mobile only.
Any suggestions?
Thanks,
Jeff
|
|
|
|
|
|
Yes, I've already done that. If you look at the results from your search you will see they are for mobile platforms. There are some hits which state they support desktop but when you go to their site (like Crisp Media) they in fact only support mobile. So if you know of any ad platforms which actually support Windows desktop, I'd like to know their names.
Jeff
|
|
|
|
|
It's a long list. Keep reading.
Truthfully, it's rare to see ads in a desktop app. I don't think you're going to find anyone with any experience in it. There may be 8,000,000+ members here, but only a handful of those are regulars here and answer questions.
You are most likely doing your own research on this one.
|
|
|
|
|
I am a year 1 engineering student and is quite new to programming. Just learnt the very basics of C++ like looping, pointer, array (not even inheritence, etc).
Recently I was taught about windows form application, and yet I only know about double-click on button to add some codes in the event-handler upon clicking, and MessageBox::Show(). I will learn some GDI+ and will be required to display some images moving in the form.
If I want to develop a dummy gun game, in which a bullet will be displayed upon clicking (using GDI+), I will need to get the current position of the mouse upon clicking. I looked up the msdn and other search engines but just couldn't understand what class or object or function I should use for this purpose. I could only find something like:
public:
MouseEventArgs(MouseButtons Button, int Clicks,
int X, int Y, int Delta);
But I don't know where I should put it in, and how I can get access to the position X and Y. I would like the whole form to be possible for mouse-clicking without any button. Can someone help me?
|
|
|
|
|
The MouseEventHandler[^] delegate should provide what you want.
Unrequited desire is character building. OriginalGriff
I'm sitting here giving you a standing ovation - Len Goodman
|
|
|
|
|
i would love to design a window appication usig vb.net as my language. the application will require admin login, user registration, and data entry. i would love to use Ms Access 2007 as my data database. how will i code my textbox, command button and connect my database? thanks
|
|
|
|
|
As it sounds like you don't have the first clue where to start, I would recommend that you start by buying this[^] book. Read it, study it, try the samples. Everything that you want to do will be covered in there I suspect.
|
|
|
|
|
I would also go through the tutorials that you can find in this site too
MSDN Developer Learning centre[^]
Lobster Thermidor aux crevettes with a Mornay sauce, served in a Provençale manner with shallots and aubergines, garnished with truffle pate, brandy and a fried egg on top and Spam - Monty Python Spam Sketch
|
|
|
|