无法覆盖Kendo Grid过滤器消息(ASP.NET MVC)

时间:2014-10-24 15:15:28

标签: asp.net asp.net-mvc asp.net-mvc-4 kendo-ui kendo-grid

我的Kendo Grid有过滤消息覆盖(或者至少我想要一个):

(...)
.Scrollable()
.Filterable(f => f.Messages(msg => msg.Clear("XXXXXXXX")))
.Sortable()
(...)

但在检查后我仍然可以看到默认消息。所以我试着把它设置为列:

(...)
column.Bound(m => m.MyProperty).Filterable(f => f.Messages(msg => msg.Clear("XXXXXXXX")))
(...)

它完美无缺!该消息被覆盖为“XXXXXXXX”。

生成的JavaScript包含在每列上设置的默认过滤器消息定义,因此很明显,在网格上设置的自定义消息会被消息覆盖,MVC Helper会在每列上设置。

有没有办法在网格上使用MVC助手设置自定义过滤器消息?我有几十个有数百列的网格,所以在每一列上设置自定义消息只是为了更改清除按钮文本不被视为一个选项(还)。

我可以创建一些简单的脚本并将其附加到FilterMenuOpen事件,但是有更简单的方法吗?没有搞乱剑道的本地化资源?

1 个答案:

答案 0 :(得分:0)

将近18个月后,如果其他人偶然发现这个问题需要答案。

public class MainActivity : AppCompatActivity, BottomNavigationBar.Listeners.IOnTabSelectedListener
{
    private BottomBar _bottomBar;

    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);

        SetContentView(Resource.Layout.MainActivity);

        _bottomBar = BottomBar.Attach(this, bundle);
        _bottomBar.SetItems(
            new BottomBarTab(Resource.Drawable.ic_recents, "Recents"),
            new BottomBarTab(Resource.Drawable.ic_favorites, "Favorites"),
            new BottomBarTab(Resource.Drawable.ic_nearby, "Nearby")
        );
        _bottomBar.SetOnItemSelectedListener(this);
        _bottomBar.HideShadow();
        _bottomBar.UseDarkTheme(true);
        _bottomBar.SetTypeFace("Roboto-Regular.ttf");

        var badge = _bottomBar.MakeBadgeForTabAt(1, Color.ParseColor("#f02d4c"), 1);
        badge.AutoShowAfterUnSelection = true;
    }

    public void OnItemSelected(int position)
    {

    }

    protected override void OnSaveInstanceState(Bundle outState)
    {
        base.OnSaveInstanceState(outState);

        // Necessary to restore the BottomBar's state, otherwise we would
        // lose the current tab on orientation change.
        _bottomBar.OnSaveInstanceState(outState);
    }
}

(...) .Scrollable() .Filterable(f => f.Messages(msg => msg.Info("XXXXXXXX"))) .Sortable() (...) 方法允许您更改所有列的过滤器消息。您还可以通过每个列的.Info方法设置消息。