本文整理汇总了C#中Bundle.GetValue方法的典型用法代码示例。如果您正苦于以下问题:C# Bundle.GetValue方法的具体用法?C# Bundle.GetValue怎么用?C# Bundle.GetValue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Bundle
的用法示例。
在下文中一共展示了Bundle.GetValue方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BindFields
private void BindFields(WizardFragment wizardFragment, Bundle args)
{
var fields = wizardFragment.GetType().GetFields(); //Scan the step for fields annotated with WizardState and bind value if found in step's arguments
foreach (var field in fields) {
if (field.CustomAttributes == null || !field.CustomAttributes.Any(a => a.AttributeType == typeof(WizardStateAttribute)))
continue;
try {
if (field.GetType() == typeof(DateTime)) {
field.SetValue(wizardFragment, new DateTime(args.GetLong(field.Name)));
}
else {
//var value = args.Get(field.Name); //This wont work when passed to field.SetValue
var value = args.GetValue(field.Name, field.FieldType); //Workaround
field.SetValue(wizardFragment, value);
}
}
catch (FieldAccessException f) {
throw new ArgumentException(string.Format("Unable to access the field: {0}. Only public fields are supported", field.Name), f);
}
}
}
示例2: BindFields
private void BindFields(Bundle args)
{
var fields = this.GetType().GetFields();
foreach (var field in fields) {
if (field.CustomAttributes == null || !field.CustomAttributes.Any(a => a.AttributeType == typeof(WizardStateAttribute)))
continue;
try {
if (field.GetType() == typeof(DateTime)) {
field.SetValue(this, new DateTime(args.GetLong(field.Name)));
}
else {
//var value = args.GetString(field.Name);
var value = args.GetValue(field.Name, field.FieldType); //Workaround
field.SetValue(this, value);
}
}
catch (FieldAccessException f) {
throw new ArgumentException(string.Format("Unable to access the field: {0}. Only public fields are supported", field.Name), f);
}
}
}