【问题标题】:Pesky NULL checkbox in SSRS reportSSRS 报告中讨厌的 NULL 复选框
【发布时间】:2011-03-05 13:47:37
【问题描述】:

我在 WinForms 应用程序中使用 ReportViewer 控件。如何将“NULL”复选框文本更改为其他任何内容? (就在下图中“开始日期”的右侧)

alt text http://img269.imageshack.us/img269/1774/dropdowninssrspagerequi.png

【问题讨论】:

    标签: c# winforms reporting-services checkbox


    【解决方案1】:

    编辑报告并取消选中这些参数的“允许 NULL 值”复选框。您可以使用“允许空白值”而不显示其他复选框。

    【讨论】:

    • blank 与 null 不同,我必须更改所有查询?
    • 正确,不一样。你可能需要也可能不需要更改查询,我不能说。您始终可以通过检查查询中的 LEN 将变量设为 NULL。无论如何,这是我所知道的唯一删除框并且仍然不需要值的方法。
    • 另外,我不能允许浮点数/日期为空。所以我也必须在查询中做一些解析
    • 事实证明,客户改变了主意,想要这种方法而不是复选框。随便:)
    【解决方案2】:

    这是答案,它有点难看,但如果你不得不自己做的话,希望这可以节省你的打字时间。像这样实现 IReportViewerMessages 接口:

    public class CustomReportViewerMessages : IReportViewerMessages
    {
        public string NullCheckBoxText { get { return "All"; } }
        public string NullCheckBoxToolTip { get { return "All"; } }
    
        public string DocumentMapButtonToolTip { get { return "DocumentMapButtonToolTip"; } }
        public string ParameterAreaButtonToolTip { get { return "ParameterAreaButtonToolTip"; } }
        public string FirstPageButtonToolTip { get { return "FirstPageButtonToolTip"; } }
        public string PreviousPageButtonToolTip { get { return "PreviousPageButtonToolTip"; } }
        public string CurrentPageTextBoxToolTip { get { return "CurrentPageTextBoxToolTip"; } }
        public string PageOf { get { return "PageOf"; } }
        public string NextPageButtonToolTip { get { return "NextPageButtonToolTip"; } }
        public string LastPageButtonToolTip { get { return "LastPageButtonToolTip"; } }
        public string BackButtonToolTip { get { return "BackButtonToolTip"; } }
        public string RefreshButtonToolTip { get { return "RefreshButtonToolTip"; } }
        public string PrintButtonToolTip { get { return "PrintButtonToolTip"; } }
        public string ExportButtonToolTip { get { return "ExportButtonToolTip"; } }
        public string ZoomControlToolTip { get { return "ZoomControlToolTip"; } }
        public string SearchTextBoxToolTip { get { return "SearchTextBoxToolTip"; } }
        public string FindButtonToolTip { get { return "FindButtonToolTip"; } }
        public string FindNextButtonToolTip { get { return "FindNextButtonToolTip"; } }
        public string ZoomToPageWidth { get { return "ZoomToPageWidth"; } }
        public string ZoomToWholePage { get { return "ZoomToWholePage"; } }
        public string FindButtonText { get { return "FindButtonText"; } }
        public string FindNextButtonText { get { return "FindNextButtonText"; } }
        public string ViewReportButtonText { get { return "ViewReportButtonText"; } }
        public string ProgressText { get { return "ProgressText"; } }
        public string TextNotFound { get { return "TextNotFound"; } }
        public string NoMoreMatches { get { return "NoMoreMatches"; } }
        public string ChangeCredentialsText { get { return "ChangeCredentialsText"; } }
        public string NullValueText { get { return "NullValueText"; } }
        public string TrueValueText { get { return "TrueValueText"; } }
        public string FalseValueText { get { return "FalseValueText"; } }
        public string SelectAValue { get { return "SelectAValue"; } }
        public string UserNamePrompt { get { return "UserNamePrompt"; } }
        public string PasswordPrompt { get { return "PasswordPrompt"; } }
        public string SelectAll { get { return "SelectAll"; } }
        public string PrintLayoutButtonToolTip { get { return "PrintLayoutButtonToolTip"; } }
        public string PageSetupButtonToolTip { get { return "PageSetupButtonToolTip"; } }
        public string TotalPagesToolTip { get { return "TotalPagesToolTip"; } }
        public string StopButtonToolTip { get { return "StopButtonToolTip"; } }
        public string DocumentMapMenuItemText { get { return "DocumentMapMenuItemText"; } }
        public string BackMenuItemText { get { return "BackMenuItemText"; } }
        public string RefreshMenuItemText { get { return "RefreshMenuItemText"; } }
        public string PrintMenuItemText { get { return "PrintMenuItemText"; } }
        public string PrintLayoutMenuItemText { get { return "PrintLayoutMenuItemText"; } }
        public string PageSetupMenuItemText { get { return "PageSetupMenuItemText"; } }
        public string ExportMenuItemText { get { return "ExportMenuItemText"; } }
        public string StopMenuItemText { get { return "StopMenuItemText"; } }
        public string ZoomMenuItemText { get { return "ZoomMenuItemText"; } }
        public string ViewReportButtonToolTip { get { return "ViewReportButtonToolTip"; } }
    }
    

    然后,在 RefreshReport 之前使用该类的实例:

                    reportViewer.Messages = new CustomReportViewerMessages();
                    reportViewer.RefreshReport();
    

    这样就可以了。请注意,除了我关心的两个(顶部)之外,我几乎将所有属性都保留为无意义的字符串。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-28
      相关资源
      最近更新 更多