title: assigning textvariable to entry causes validation to be disabled on DoubleVar
body: <p>I am modifying tk.Entry() to validate a numeric input and notify a user if there was an error in applying it. </p>
  
  <p>Beginning with the code below:</p>
  
  
  
  <pre><code>import tkinter as tk
  
  class FloatEntry(tk.Entry):
      def __init__(self, parent, *args, **kwargs):
  
          tk.Entry.__init__(self, parent, validate="focusout", validatecommand=self.validate, *args, **kwargs)
  
      def validate(self):
          try:
              print(float(self.get()))
              return True
          except ValueError as e:
              print(e)
              return False
  
  
  if __name__ == "__main__":
      root = tk.Tk()
      root.bind_all("&lt;1&gt;", lambda event:event.widget.focus_set()) # make all widgets focusable
      var = tk.DoubleVar()
      frame = tk.Frame()
      frame.pack(fill="both", expand=True)
      FloatEntry(frame, textvariable=var).pack()
      tk.Label(frame, textvariable=var).pack()
      root.mainloop()
  </code></pre>
  
  
  
  <p>This results in the exception being triggered and printing, "could not convert string to float:". After this, neither the try nor the except in validate() are triggered again, so I assume it somehow returned None and disabled validation (I could be wrong here).</p>
  
  <p>If I change the variable <code>var = DoubleVar()</code> to <code>var =tk.StringVar()</code>, then the validation works as expected, printing the float if the string can be parsed as a float, and printing the exception otherwise.</p>
  
  <p>Finally, if I add a check to the value returned by get() before the try/except block, validation works as expected as well.</p>
  
  
  
  <pre><code>def validate(self):
          try:
          val = self.get()
              if(val is not ''):
              print(float(self.get()))
              return True
          except ValueError as e:
              print(e)
              return False
  </code></pre>
  
  
  
  <p>What is causing validation to be disabled on creation of a FloatEntry object?(or if that isn't happening, what is?) </p>