Click here to Skip to main content
15,923,219 members
Home / Discussions / C#
   

C#

 
QuestionWhich is more correct? Pin
Bardy8517-Jan-10 6:25
Bardy8517-Jan-10 6:25 
AnswerRe: Which is more correct? Pin
harold aptroot17-Jan-10 6:30
harold aptroot17-Jan-10 6:30 
GeneralRe: Which is more correct? Pin
Bardy8517-Jan-10 6:52
Bardy8517-Jan-10 6:52 
GeneralRe: Which is more correct? Pin
Eddy Vluggen17-Jan-10 9:22
professionalEddy Vluggen17-Jan-10 9:22 
AnswerRe: Which is more correct? Pin
#realJSOP17-Jan-10 7:06
professional#realJSOP17-Jan-10 7:06 
GeneralRe: Which is more correct? Pin
Bardy8517-Jan-10 7:27
Bardy8517-Jan-10 7:27 
GeneralRe: Which is more correct? Pin
#realJSOP17-Jan-10 23:28
professional#realJSOP17-Jan-10 23:28 
AnswerRe: Which is more correct? Pin
DaveyM6917-Jan-10 7:20
professionalDaveyM6917-Jan-10 7:20 
GeneralRe: Which is more correct? Pin
Bardy8517-Jan-10 7:43
Bardy8517-Jan-10 7:43 
GeneralRe: Which is more correct? Pin
DaveyM6917-Jan-10 7:55
professionalDaveyM6917-Jan-10 7:55 
GeneralRe: Which is more correct? Pin
Bardy8517-Jan-10 8:27
Bardy8517-Jan-10 8:27 
AnswerRe: Which is more correct? Pin
Luc Pattyn17-Jan-10 9:23
sitebuilderLuc Pattyn17-Jan-10 9:23 
GeneralRe: Which is more correct? Pin
Bardy8517-Jan-10 9:31
Bardy8517-Jan-10 9:31 
GeneralRe: Which is more correct? Pin
Luc Pattyn17-Jan-10 9:32
sitebuilderLuc Pattyn17-Jan-10 9:32 
Question[StructLayout(LayoutKind.Sequential)] Pin
3bood.ghzawi17-Jan-10 5:31
3bood.ghzawi17-Jan-10 5:31 
AnswerRe: [StructLayout(LayoutKind.Sequential)] Pin
Luc Pattyn17-Jan-10 5:43
sitebuilderLuc Pattyn17-Jan-10 5:43 
AnswerRe: [StructLayout(LayoutKind.Sequential)] Pin
0x3c017-Jan-10 5:45
0x3c017-Jan-10 5:45 
AnswerRe: [StructLayout(LayoutKind.Sequential)] Pin
dan!sh 17-Jan-10 6:12
professional dan!sh 17-Jan-10 6:12 
AnswerRe: [StructLayout(LayoutKind.Sequential)] Pin
harold aptroot17-Jan-10 6:28
harold aptroot17-Jan-10 6:28 
AnswerRe: [StructLayout(LayoutKind.Sequential)] Pin
DaveyM6917-Jan-10 7:32
professionalDaveyM6917-Jan-10 7:32 
QuestionExtend BindingSource with a Dirty property and Dirty changed Event Pin
ArjenGroeneveld17-Jan-10 5:20
ArjenGroeneveld17-Jan-10 5:20 
AnswerRe: Extend BindingSource with a Dirty property and Dirty changed Event Pin
Eddy Vluggen17-Jan-10 10:11
professionalEddy Vluggen17-Jan-10 10:11 
GeneralRe: Extend BindingSource with a Dirty property and Dirty changed Event Pin
ArjenGroeneveld17-Jan-10 10:38
ArjenGroeneveld17-Jan-10 10:38 
GeneralRe: Extend BindingSource with a Dirty property and Dirty changed Event Pin
Eddy Vluggen17-Jan-10 13:44
professionalEddy Vluggen17-Jan-10 13:44 
GeneralRe: Extend BindingSource with a Dirty property and Dirty changed Event Pin
ArjenGroeneveld17-Jan-10 21:24
ArjenGroeneveld17-Jan-10 21:24 
Hello,

The end result I have in mind is an extended BindingSouce control, which is having an "IsDirty" property and an "IsDirtyChange" event.
The "IsDirtyChange" should only trigger when the User is making a change in one of the bounded controls.

I did some searching in FrameWork and I put the following together, but this code does not trigger when a user changes the content in a control. So something is missing.

Extended BindingSource coding...
namespace ACMAD.Business
{
class exBindingSource : BindingSource
{
// Internal variable
private bool flgIsDirty = false;

// Event
public event EventHandler IsDirtyChanged;

protected virtual void OnDirtyChanged(EventArgs e)
{
if (IsDirtyChanged != null)
{
IsDirtyChanged(this, e);
}
}

public bool IsDirty
{
get
{
return flgIsDirty;
}
set
{
flgIsDirty = value;
}
}

protected override void OnBindingComplete(BindingCompleteEventArgs e)
{
base.OnBindingComplete(e);

if (e.BindingCompleteContext == BindingCompleteContext.DataSourceUpdate)
{
if (!flgIsDirty && (e.BindingCompleteState == BindingCompleteState.Success) && e.Binding.Control.Focused)
{
flgIsDirty = true;
OnDirtyChanged(EventArgs.Empty);
}
}
}

protected override void OnCurrentChanged(EventArgs e)
{
base.OnCurrentChanged(e);
if (flgIsDirty == true)
flgIsDirty = false;
}
}
}

Form coding
I placed the exBindingSource on the form and connected an textbox to it.
One record is loaded with:

// Test purpose
exBindingSource1.Clear();
exBindingSource1.Add(ac_Model);


And I added an event
private void exBindingSource1_IsDirtyChanged(object sender, EventArgs e)
{
textBox1.Text = exBindingSource1.IsDirty.ToString();
}


The idea is that when the user makes a change to Textbox1 that Textbox2 is filled with the exBindingSource1.IsDirty value.

But ... nothing happens..

Your help is most appreciated.

With kind regards,
Arjen Groeneveld

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.