이벤트를 발생시킬 수 없습니다. 여기 내 코드가있다. 나는 변화를 알고 싶은 값이이 라인 가치는 것을 그것을 알려주기 : 이벤트 발생
eventvaluechange.IntValue = value;//link value as the value I want to see change
가 그럼 난 값의 변화가 무슨 일이 생긴 때 수행 할 작업을 말한다.
public partial class Form1 : Form
{
int value=0;
int value2=999;
Val_changeInt eventvaluechange;
public Form1()
{
InitializeComponent();
eventvaluechange = new Val_changeInt();
eventvaluechange.IntValue = value;//link value as the value I want to see change
eventvaluechange.ValueChanged += new EventHandler(ValueHasChanged);//what I do on event
}
private void button1_Click(object sender, EventArgs e)
{
value = value +1;
}
private void ValueHasChanged(object sender, EventArgs e)
{
value2 = value;
label1.Text = value2.ToString();
}
class Val_changeInt
{
private int valueToWatchOn;
public event System.EventHandler ValueChanged;
protected object _lock = new object();
protected virtual void ValueHasChanged()
{
EventHandler eventvaluechange = ValueChanged;
if (eventvaluechange != null) eventvaluechange(this, EventArgs.Empty);
}
public int IntValue
{
get { return this.valueToWatchOn; }
set
{
if (value != this.valueToWatchOn)
{//if value changed enter
this.valueToWatchOn = value;
ValueHasChanged();
}
}
}
}//Event handler for a value change
내가 뭘 잘못하고 있니?
고마워요.
코드를 단계별로 디버그하고 무슨 일이 일어나는지 보았습니까? – Gusman
디버깅 도움말을 찾는 질문 ("**이 코드가 작동하지 않는 이유는 무엇입니까? **")에는 원하는 동작, 특정 문제 또는 오류 및 문제 자체 **를 재현하는 데 필요한 가장 짧은 코드가 포함되어야합니다. ** 명확한 문제 설명이없는 질문 **은 다른 독자에게 유용하지 않습니다. 참조 : [최소한의 완전하고 검증 가능한 예제를 만드는 방법] (http://stackoverflow.com/help/mcve). –
예, 결코 intvalue에 들어 가지 않습니다. – Jablonovo