এটি এমন একটি ফাংশন যা আপনি যেখানে মাল্টিডিলেট আমন্ত্রণ তালিকার তালিকায় চান সেখানে নতুন ইভেন্ট হ্যান্ডলার ফাংশনটি রাখবে।
private void addDelegateAt(ref YourDelegate initial, YourDelegate newHandler, int position)
{
Delegate[] subscribers = initial.GetInvocationList();
Delegate[] newSubscriptions = new Delegate[subscribers.Length + 1];
for (int i = 0; i < newSubscriptions.Length; i++)
{
if (i < position)
newSubscriptions[i] = subscribers[i];
else if (i==position)
newSubscriptions[i] = (YourDelegate)newHandler;
else if (i > position)
newSubscriptions[i] = subscribers[i-1];
}
initial = (YourDelegate)Delegate.Combine(newSubscriptions);
}
তারপরে আপনি আপনার কোডটি যেখানেই সুবিধাজনক যেখানেই '- =' দিয়ে ফাংশনটি সরাতে পারেন।
পিএস - আমি 'পজিশন' প্যারামিটারের জন্য কোনও ত্রুটি পরিচালনা করছি না।