SelectedItem
SelectionChanged
object
и отдельно его тип. Либо реализовать поддержку типов всех возможных аргументов. А если еще подумать, то можно заменить большую часть вот этого кода обычным словарём. ///
///
///
/// Initializes a new instance of the Bitmap class with the specified
/// size and format.
///
///
public Bitmap(int width, int height, PixelFormat format) {
IntPtr bitmap = IntPtr.Zero;
int status = SafeNativeMethods.Gdip.GdipCreateBitmapFromScan0(width, height, 0, (int) format, NativeMethods.NullHandleRef, out bitmap);
if (status != SafeNativeMethods.Gdip.Ok)
throw SafeNativeMethods.Gdip.StatusException(status);
SetNativeImage(bitmap);
}
///
///
/// Initializes a new instance of the
///
/// class with the specified size.
///
public Bitmap(int width, int height) : this(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb) {
}
dynamic
же есть:string json = @"[
{
'Title': 'Json.NET is awesome!',
'Author': {
'Name': 'James Newton-King',
'Twitter': '@JamesNK',
'Picture': '/jamesnk.png'
},
'Date': '2013-01-23T19:30:00',
'BodyHtml': '<h3>Title!</h3>\r\n<p>Content!</p>'
}
]";
dynamic blogPosts = JArray.Parse(json);
dynamic blogPost = blogPosts[0];
string title = blogPost.Title;
Console.WriteLine(title);
// Json.NET is awesome!
string author = blogPost.Author.Name;
Console.WriteLine(author);
// James Newton-King
DateTime postDate = blogPost.Date;
Console.WriteLine(postDate);
// 23/01/2013 7:30:00 p.m.
dynamic product = new JObject();
product.ProductName = "Elbow Grease";
product.Enabled = true;
product.Price = 4.90m;
product.StockCount = 9000;
product.StockValue = 44100;
product.Tags = new JArray("Real", "OnSale");
Console.WriteLine(product.ToString());
// {
// "ProductName": "Elbow Grease",
// "Enabled": true,
// "Price": 4.90,
// "StockCount": 9000,
// "StockValue": 44100,
// "Tags": [
// "Real",
// "OnSale"
// ]
// }
public class BarType
{ }
public class Foo
{
public static string Bar<T>() => $"Bar() is called with generic: {typeof(T).FullName}";
}
Type type = typeof(Foo);
MethodInfo mi = type.GetMethods().Single(m => m.Name == "Bar" && m.IsGenericMethodDefinition);
MethodInfo genericMi = mi.MakeGenericMethod(typeof(BarType));
object result = genericMi.Invoke(null, []);
Console.WriteLine($"Result: {result}");
>> Result: Bar() is called with generic: Example.App+BarType
public class Foo
{
public static string Bar() => "Bar() is called";
}
var type = typeof(Foo);
var mi = type.GetMethod("Bar", BindingFlags.Static | BindingFlags.Public);
var r = mi.Invoke(null, []);
Console.WriteLine($"Result: {r}");
>> Result: Bar() is called
void FormAMethod()
{
if (formB.InvokeRequired)
{
formB.Invoke( () => formB.Text = "data" );
}
else
{
formB.Text = "data";
}
}