Angular 如何动态更改剑道网格行中的货币
我创建了这个剑道网格: 我试图实现的是:每当我更改currencyAngular 如何动态更改剑道网格行中的货币,angular,kendo-ui,kendo-grid,currency,kendo-angular-ui,Angular,Kendo Ui,Kendo Grid,Currency,Kendo Angular Ui,我创建了这个剑道网格: 我试图实现的是:每当我更改currencyselect选项时,我只想更改该行中的currency,,这样我就可以在我的网格中有多个currency条目。我找到了文档,并尝试了完全相同的代码,但我意识到每次我更改选项时,我的Web应用程序中的整个文化都会发生变化 下面是一些代码: .component.html (我在上面提到的文档页面中找到了localeService)。提前谢谢 如果您将您的货币设置为枚举类型,则应允许您为每种货币选择该枚举。不确定这是否是您想要的,我
select
选项时,我只想更改该行中的currency,,这样我就可以在我的网格中有多个currency条目。我找到了文档,并尝试了完全相同的代码,但我意识到每次我更改选项
时,我的Web应用程序中的整个文化都会发生变化
下面是一些代码:
.component.html
(我在上面提到的文档页面中找到了
localeService
)。提前谢谢 如果您将您的货币设置为枚举类型,则应允许您为每种货币选择该枚举。不确定这是否是您想要的,我做了一些类似于剑道MVC的事情。最后,我简单地用Currency列填充了组合框
,并在左侧列中设置了type=number
。我认为这与你的建议非常接近。无论如何谢谢你!
<kendo-grid #creditorsGrid
id="creditorsGrid"
[data]="gridData"
...>
<ng-template kendoGridToolbarTemplate>
...
</ng-template>
<kendo-grid-column field="ID" title="Α/Α" width="50"></kendo-grid-column>
<kendo-grid-column field="CreditorName" title="Πιστωτής">
<ng-template kendoGridCellTemplate let-dataItem="dataItem">
<kendo-combobox [data]="creditorsListItems" [suggest]="true"></kendo-combobox>
</ng-template>
</kendo-grid-column>
<kendo-grid-column field="Amount" title="Ποσό" editor="numeric" format="{0:c}"></kendo-grid-column>
<kendo-grid-column field="Currency" title="Νόμισμα" width="100">
<ng-template kendoGridCellTemplate let-dataItem="dataItem">
<select style="width:65px" [value]="localeId" (change)="onLocaleChange($event.target.value)">
<option value="en-DE">€</option>
<option value="en-GB">£</option>
<option value="en-CH">Fr.</option>
<option value="en">$</option>
</select>
</ng-template>
</kendo-grid-column>
<kendo-grid-command-column width="100">
...
</kendo-grid-command-column>
</kendo-grid>
export class DebtsComponent implements OnInit {
constructor(private formBuilder: FormBuilder, public editService: EditService,
public intlService: IntlService, private localeService: LocaleService) { }
public get localeId(): string {
return this.localeService.localeId;
}
public onLocaleChange(locale: string): void {
this.localeService.set(locale);
}
}