2015-02-11 65 views
1

我有一个带有RibbonSpinEditItem的功能区,需要显示/设置用户自动注销之前的分钟数(如果他当时空闲)。获取RibbonSpinEditItem的当前值

在它的配置如下的时刻:

themeGroup.Items.Add(MVCxRibbonItemType.SpinEditItem, i => 
    { 
     var spin = (RibbonSpinEditItem) i; 
     spin.Text = "Log out after: "; 
     spin.Name = "TimeBeforeIdle"; 
     spin.PropertiesSpinEdit.MaxValue = 60; 
     spin.PropertiesSpinEdit.MinValue = 5; 
     spin.Size = RibbonItemSize.Small; 
     spin.Value = ModelSessionHelper.TimeBeforeIdle; 
     spin.PropertiesSpinEdit.ClientSideEvents.ValueChanged = "function(s,e){ alert("+ spin.Value + "); }"; 
    }); 

现在的问题是,当我改变我的项目的价值仍然提醒的第一个值。

例子:

原时间:警惕20

+1:20警报

+1:20警报

更改为50:20警报

我猜测这是因为具有警报的函数是在创建控件时创建的,并使用控件当时的值。那么如何获得警报以使用当前值?

如果我必须使用我的javascript函数的s参数有人可以请解释如何处理这个?因为如果我提醒我刚获得对象[对象]。我不知道如何从中获得控制的价值?

亲切的问候。

回答

2

可以使用GetValue方法:

spin.PropertiesSpinEdit.ClientSideEvents.ValueChanged = "function(s,e) { alert(s.GetValue()); }";