几周前我加入了一个GWT应用项目。代码库是在2009年开始的。我正在尝试用CellTable替换FlexTable,以便我可以利用可排序的列。该项目中当前版本的GWT是2.7.0,但仔细查看代码,看起来仍然有一些功能已经过时了。我是GWT的新手,我可能是错的。
到目前为止,事情在功能上都很好。但是,GWT似乎压倒了我更新CSS的尝试。我使用GWT dynatablerf sample作为模型将CSS添加到CellTable。 TimeSlotWidget使用CellTable.Style:
interface TableResources extends CellTable.Resources {
@Override
@Source(value = {CellTable.Style.DEFAULT_CSS, "CellTablePatch.css"})
CellTable.Style cellTableStyle();
}
然后将其应用于CellTable,如下所示:
table = new CellTable<TimeSlotListWidget.ScheduleRow>(ROWS_IN_A_DAY,
GWT.<TableResources> create(TableResources.class));
我试图在我的代码中使用这种方法。我甚至从值列表中省略了CellTable.Style.DEFAULT_CSS
并创建了我自己的CSS样式表,该样式表作为GWT CellTable.css
我注意到带有UIBinder的GWT TimeSlotListWidget sample has an ui.xml文件。我的项目目前没有使用UIBinder。
当我运行我的代码时,页面中插入了<style>
块,似乎是标准的GWT CellTable.css。然后直接在我的CSS中插入另一个<style>
块。我的CSS并没有覆盖标准的GWT CSS。
如何防止插入GWT CellTable.css?为什么要插入?
答案 0 :(得分:2)
问题在于,在您的代码中,您重用了@Html.Partial("UserControl/Calendar", Model.DOB)
,并且两个不同的ClientBundle使用了相同的类型,但每个都将自己的CSS绑定到它。
相反,扩展CellTable.Style
界面,并在 捆绑包中使用该界面:
CellTable.Style