Сначала вы должны получить ссылку на элемент, к которому применили привязку, а затем использовать BindingOperations.GetBinding
:
private void LoadValidationRules()
{
if (_templateApplied)
{
TextBox Editor = Template.FindName("Editor", this) as TextBox;
Binding b = BindingOperations.GetBinding(Editor, TextBox.TextProperty);
if (b != null)
{
...
}
}
}
Поскольку Binding
не предполагается изменять, вы также можете создать начальная привязка программно:
private void LoadValidationRules()
{
if (_templateApplied)
{
TextBox Editor = Template.FindName("Editor", this) as TextBox;
Binding b = new Binding(nameof(Value)) { Source = this };
if (ValueType == Type.Double)
{
b.ValidationRules.Add(new DoubleValidationRule()
{
//DomainMax = DomainMax
});
}
BindingOperations.SetBinding(Editor, TextBox.TextProperty, b);
}
}
Тогда вы непременно получите уникальную привязку для каждого экземпляра.
Вам нужна веб-камера с хорошим разрешением для чтения штрихкодов. Если Вы знаете, как назвать код C/C++ от Дельфи, необходимо изучить считыватель штрихкода зебры.
Я использую dtk штрихкод sdk из http://www.dtksoft.com/. Это не свободно и не с открытым исходным кодом хотя, таким образом, это не может соответствовать Вашим потребностям. Это стало dll, и было легко записать обертку Дельфи вокруг этого.
В основном Вы передаете его файл (изображение или PDF), и это возвращает число и содержание штрихкодов в файле.
Вот тот, который это - DLL/ActiveX (хотя не свободный), который, по-видимому, идет с примером, который читает из веб-камеры. Существует также бесплатная версия командной строки, но это не совсем как многофункциональное. Не использовали его, но это было на моем радаре некоторое время.
http://www.inspirant.de/index.php?ref=prodinbarcodeocr&lg=en
Colin
возможно, barcodepedia имеют читателя флэш-памяти, который читает штрихкоды из веб-камеры.
но смотря на сайт похоже, что они не в выдачу читателя.
что-то, что продолжает подходить в Google, является Считывателем штрихкода Eym, который является ActiveX/OCX