|
■No54480 (もりお さん) に返信
ご返答有り難う御座います。 > ReadOnly モードというのは FormView.DefaultMode プロパティのことでしょうか。 > CalendarExtender コントロールは、ItemTemplate に TextBox を配置すると、正常 > に動作するという状況ですかね。
はい、ItemTemplateの事です。
デフォルトではラベルが配置されて値がバインドされていますが、(ラベルはCalendarExtender を設定する事が出来ないため)、ラベルをTextBoxに置き換えてCalendarExtenderを設定したら 正常に動作しました。
(EditItemTemplate等で正常に動作しないので、確認のため上記を試しました。 また、WebFormに直接、TextBoxを設置する等、FormView外でも正常に動作しています。)
> EditItemTemplate に CalendarExtender コントロールを配置しているならば。 > CalendarExtender コントロールは、FormView が Edit モードに移行する段階に > おいて、作成されるはずなのですが。うーむ。 > エラーメッセージは、どのようなものが、出力されますか?
同様にEditItemTemplateやInsertItemTemplateのTextBox(こちらはデフォルトで配置された物)に、 CalendarExtenderを設定して、ItemTemplateの「編集」「新規作成」のリンクボタンをクリックして、 モードを切り替えようとすると下記のエラーが起こります。
■VS2010で、「ソースファイルの検索 「ScriptObjectBuilder.cs」」のダイアログが開く。
★ダウンロードしたControlToolKitのソースから「ScriptObjectBuilder.cs」を指定すると下記のエラー
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ System.Resources.MissingManifestResourceException はユーザー コードによってハンドルされませんでした。 Message=指定されたカルチャまたはニュートラル カルチャに対して適切なリソースが見つかりませんでした。"AjaxControlToolkit.Properties.Resources.NET4.resources" が適切に埋め込まれたか、実行時にアセンブリ "AjaxControlToolkit" にリンクされたか、または必要なサテライト アセンブリが読み込まれて完全に署名されていることを確認してください。 Source=mscorlib StackTrace: 場所 System.Resources.ManifestBasedResourceGroveler.HandleResourceStreamMissing(String fileName) 場所 System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo culture, Dictionary`2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackCrawlMark& stackMark) 場所 System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture, Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark) 場所 System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents) 場所 System.Resources.ResourceManager.GetString(String name, CultureInfo culture) 場所 AjaxControlToolkit.Properties.Resources_NET4.get_E_NoScriptManager() 場所 d:\hg\act\Server\AjaxControlToolkit\Properties\Resources.NET4.Designer.cs:行 68 場所 AjaxControlToolkit.ScriptObjectBuilder.RegisterCssReferences(Control control) 場所 d:\hg\act\Server\AjaxControlToolkit\ExtenderBase\ScriptObjectBuilder.cs:行 332 場所 AjaxControlToolkit.ExtenderControlBase.OnLoad(EventArgs e) 場所 d:\hg\act\Server\AjaxControlToolkit\ExtenderBase\ExtenderControlBase.cs:行 305 場所 System.Web.UI.Control.LoadRecursive() 場所 System.Web.UI.Control.LoadRecursive() 場所 System.Web.UI.Control.AddedControl(Control control, Int32 index) 場所 System.Web.UI.ControlCollection.Add(Control child) 場所 System.Web.UI.WebControls.TableRow.CellControlCollection.Add(Control child) 場所 System.Web.UI.ControlCollection.AddAt(Int32 index, Control child) 場所 System.Web.UI.WebControls.TableRow.CellControlCollection.AddAt(Int32 index, Control child) 場所 System.Web.UI.WebControls.TableCellCollection.Add(TableCell cell) 場所 System.Web.UI.WebControls.FormView.InitializeRow(FormViewRow row) 場所 System.Web.UI.WebControls.FormView.CreateDataRowFromTemplates(Boolean dataBinding, TableRowCollection rows) 場所 System.Web.UI.WebControls.FormView.CreateDataRow(Boolean dataBinding, TableRowCollection rows, Object dataItem) 場所 System.Web.UI.WebControls.FormView.CreateChildControls(IEnumerable dataSource, Boolean dataBinding) 場所 System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) 場所 System.Web.UI.WebControls.FormView.PerformDataBinding(IEnumerable data) 場所 System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) 場所 System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) 場所 System.Web.UI.WebControls.DataBoundControl.PerformSelect() 場所 System.Web.UI.WebControls.BaseDataBoundControl.DataBind() 場所 System.Web.UI.WebControls.FormView.DataBind() 場所 System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound() 場所 System.Web.UI.WebControls.FormView.EnsureDataBound() 場所 System.Web.UI.WebControls.BaseDataBoundControl.OnPreRender(EventArgs e) 場所 System.Web.UI.Control.PreRenderRecursiveInternal() 場所 System.Web.UI.Control.PreRenderRecursiveInternal() 場所 System.Web.UI.Control.PreRenderRecursiveInternal() 場所 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) InnerException: ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
★ソースコードを指定しないと、
---------------------- Microsoft JScript 実行時エラー: Sys.ArgumentException: Value must not be null for Controls and Behaviors. Parameter name: element
が表示され、下記で止まっています。
---------------------- ScriptResource.axd・・・ (略)[動的] ---------------------- (略)
var e = Function._validateParams(arguments, [ {name: "type", type: Type}, {name: "properties", mayBeNull: true, optional: true}, {name: "events", mayBeNull: true, optional: true}, {name: "references", mayBeNull: true, optional: true}, {name: "element", mayBeNull: true, domElement: true, optional: true} ]); if (e) throw e; if (type.inheritsFrom(Sys.UI.Behavior) || type.inheritsFrom(Sys.UI.Control)) { if (!element) throw Error.argument('element', Sys.Res.createNoDom); ←ここで停止 } else if (element) throw Error.argument('element', Sys.Res.createComponentOnDom); var component = (element ? new type(element): new type()); callIf(component, "beginUpdate"); if (properties) { Sys.Component._setProperties(component, properties); }
(略) ----------------------
検証用のプロジェクトを作成して、一切コードを書かないで実行した状態ですので… ContorlToolKitの不具合でしょうか…
|